Map<Character,Integer> map = new HashMap<>();
map.put('a',1);
map.put('b',10);
map.put('c',5);
//map.enterySet()返回的是 map 的 键值对集合
List<Map.Entry<Character,Integer>> list = new ArrayList<>(map.entrySet()); //将map的entryset放入list集合
Collections.sort(list,new Comparator<Map.Entry<Character, Integer>>() {
@Override
public int compare(Map.Entry<Character, Integer> o1, Map.Entry<Character, Integer> o2) {
return o2.getValue()-o1.getValue();//降序,升序交换o1和o2的位置
}
});
//遍历 list
for(Entry<String, Integer> t:list){
System.out.println(t.getKey()+":"+t.getValue());
}
//输出结果
b:10
c:5
a:1