public static Map.Entry[] getSortedHashtableByValue(Map<String, Integer> map) {
//用一个Set 引用去接收 map.entrySet()返回的是装有Entry对象的集合;
Set set = map.entrySet();
//用 Map.Entry[]接收 set中的元素
Map.Entry[] entries = (Map.Entry[]) set.toArray(new Map.Entry[set.size()]);
//通过自定义的 Comparator比较器,对元素进行排序
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;
}
[ 本帖最后由 杨志罡 于 2011-07-21 04:35 编辑 ] |