我希望找到一种优雅的方式,先按值排序地图,然后按键排序。
例如:
乙| 50
一个 | 50
C | 50
E | 10
D | 100
F | 99
我有以下代码:
// Making the map into a list first
List<Map.Entry<String, Integer>> sortingList = new LinkedList<>(processMap.entrySet());
// Create a comparator that would compare the values of the map
Comparator<Map.Entry<String, Integer>> c = Comparator.comparingInt(Map -> Map.getValue());
// Sort the list in descending order
sortingList.sort(c.reversed());
我不需要再次映射结果,所以这就足够了,但是,我的结果是:
D | 100
F | 99
乙| 50
一个 | 50
C | 50
E | 10
我想不仅按值排序,还按键排序,因此结果变为:
D | 100
F | 99
一个 | 50
乙| 50
C | 50
E | 10
我研究了一些可能的解决方案,但问题是,我的值需要降序,但我的键必须升序......
希望有人可以帮助我。