排序的代码写成下面方法
//对map集合进行降序排序
public static <K, V extends Comparable<? super V>> Map<K, V> sortByValue(Map<K, V> map) {
List<Map.Entry<K, V>> list = new LinkedList<Map.Entry<K, V>>(map.entrySet());
Collections.sort(list, new Comparator<Map.Entry<K, V>>()
{
@Override
public int compare(Map.Entry<K, V> o1, Map.Entry<K, V> o2)
{
int compare = (o1.getValue()).compareTo(o2.getValue());
return -compare;
}
});
Map<K, V> result = new LinkedHashMap<K, V>();
for (Map.Entry<K, V> entry : list) {
result.put(entry.getKey(), entry.getValue());
}
return result;
}
本文详细介绍了一种使用Java对Map集合按值进行降序排序的方法。通过将Map转换为List,利用Collections.sort()和自定义Comparator实现排序,再转换回Map。此方法适用于需要按值降序排列Map元素的场景。
601

被折叠的 条评论
为什么被折叠?



