java map按照key-value排序

//needToSortMap : 按照value升序排列
Map sortedMap = new LinkedHashMap();
List> entryList = new ArrayList>(
        needToSortMap.entrySet());
Collections.sort(entryList, new Comparator>() {
    @Override
    public int compare(Map.Entry o1, Map.Entry o2) {
        return o1.getValue().compareTo(o2.getValue());
    }
});

Iterator> iter = entryList.iterator();
Map.Entry tmpEntry = null;
while (iter.hasNext()) {
    tmpEntry = iter.next();
    sortedMap.put(tmpEntry.getKey(), tmpEntry.getValue());
}

return sortedMap;


//map按照key升序排序
/*Map sortedMapByKey = new TreeMap();
sortedMapByKey.putAll(needToSortMap );
sortedMapByKey = new TreeMap(new Comparator() {//第二种
    public int compare(String obj1, String obj2) {
         return obj1.compareTo(obj2);
     }
});
sortedMapByKey.putAll(needToSortMap );*/

你可能感兴趣的:(JAVA,java,map,sort)