当前位置: 移动互联网学院 > Java培训 > JAVA开发 > Java map按照value值排序如何实现
Java map按照value值排序如何实现 时间:2017-09-27     来源:华清远见JAVA学院

Map是用来存放键值对的数据结构,可以很方便快速的根据key查到相应的value,把Map中的数据按照value的值从大到小进行排序并输出是一个比较常见的需求,今天华清Java学院小编就和大家分享一下Java map按照value值排序的具体方法。

/**

* @param h

* @return

* 实现对map按照value升序排序

*/

@SuppressWarnings("unchecked")

public static Map.Entry[] getSortedHashtableByValue(Map h) {

Set set = h.entrySet();

Map.Entry[] entries = (Map.Entry[]) set.toArray(new Map.Entry[set.size()]);

Arrays.sort(entries, new Comparator() {

public int compare(Object arg0, Object arg1) {

Long key1 = Long.valueOf(((Map.Entry) arg0).getValue().toString());

Long key2 = Long.valueOf(((Map.Entry) arg1).getValue().toString());

return key1.compareTo(key2);

}

});

return entries;

}

X