在Java中,HashMap是无序的数据结构,如果需要对HashMap中的键值对进行排序,可以通过以下方法实现: 将HashMap中的键值对转化为List,然后对List进行排序
在Java中,HashMap是无序的数据结构,如果需要对HashMap中的键值对进行排序,可以通过以下方法实现:
- 将HashMap中的键值对转化为List,然后对List进行排序。
HashMap<String,Integer>map=newHashMap<>();
//添加键值对到map
List<Map.Entry<String,Integer>>list=newArrayList<>(map.entrySet());
Collections.sort(list,newComparator<Map.Entry<String,Integer>>(){
publicintcompare(Map.Entry<String,Integer>o1,Map.Entry<String,Integer>o2){
returno1.getValue().compareTo(o2.getValue());
}
});
HashMap<String,Integer>map=newHashMap<>();
//添加键值对到map
TreeMap<String,Integer>sortedMap=newTreeMap<>(newComparator<String>(){
publicintcompare(Stringo1,Stringo2){
returnmap.get(o1).compareTo(map.get(o2));
}
});
sortedMap.putAll(map);
版权声明
本文仅代表作者观点,不代表博信信息网立场。