private Map<String,Long> sortMapByKey(Map<String,Long> map){
if (map == null || map.isEmpty()) {
return null;
}
// 创建一个有序的LinkedHashMap
Map<String, Long> sortedMap = new LinkedHashMap<String, Long>();
List<Map.Entry<String, Long>> entryList = new ArrayList<Map.Entry<String, Long>>(map.entrySet());
// 重写compare方法
Collections.sort(entryList, new Comparator<Map.Entry<String, Long>>(){
@Override
public int compare(Map.Entry<String, Long> o1, Map.Entry<String, Long> o2) { // 这里我的key值为日期,按照日期升序排列
return o1.getKey().compareTo(o2.getKey());
}
});
Iterator<Map.Entry<String, Long>> iterator = entryList.iterator();
Map.Entry<String, Long> tmpEntry = null;
// 遍历传入的map
while (iterator.hasNext()) {
tmpEntry = iterator.next();
// 写入LinkedHashMap
sortedMap.put(tmpEntry.getKey(), tmpEntry.getValue());
}
return sortedMap;
}
Java Map按照Key值进行排序
最新推荐文章于 2024-04-16 10:44:29 发布