import java.util.*;
//HashMap根据值来排序
public class Test {
public static void main(String[] args) {
HashMap<String,Integer> hs = new HashMap<>();
hs.put("S1",68);
hs.put("S2",78);
hs.put("S3",48);
hs.put("S4",88);
hs.put("S5",98);
List<Map.Entry<String,Integer>> list = new ArrayList<Map.Entry<String,Integer>>(hs.entrySet());
//collections工具类的排序方法
Collections.sort(list,new Comparator<Map.Entry<String, Integer>>() {
//重写比较器
@Override
public int compare(Map.Entry<String, Integer> o1, Map.Entry<String, Integer> o2) {
//compare方法重写中,返回正数,则两个对象位置交换,返回正数,不交换
return o2.getValue().compareTo(o1.getValue()); //compareTo方法返回值为int型,返回正数则左侧大于右侧
}
});
//遍历输出结果
for (Map.Entry<String,Integer> m : list) {
System.out.println(m.getKey()+": "+m.getValue());
}
}
}
HashMap根据值排序
最新推荐文章于 2024-05-30 19:23:49 发布