我创建了一个 TreeMap,它通过传递给构造函数的比较器按值排序。
如何按照比较器创建的顺序迭代 TreeMap? (不是按键/值的升序排列)
最佳答案
您不能使用TreeMap
。
解决方法是使用 LinkedHashMap
来保持插入顺序。
当您想要按 Comparator
对 map 进行排序时,请创建一个
带有 Comparator
的 TreeMap
实例,并将 LinkedHashMap
中包含的所有元素放入其中。
Map<MyObject> linkedHashMap = new LinkedHashMap<>();
....
TreeMap<MyObject> treeMap = new TreeMap<>(new MyComparator());
treeMap.putAll(linkedHashMap);
关于java - 迭代按比较器排序的树形图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45682077/