标签:
/** * map根据value值排序 * @param map * @param num num<0取全部的值,num>=0取前num个 * @return */ public static <K,V extends Comparable<? super V>> List<K> revsort(Map<K, V> map,int num){ List<Map.Entry<K, V>> list = new ArrayList<Map.Entry<K,V>>(map.entrySet()); Collections.sort(list, new Comparator<Map.Entry<K, V>>() { @Override public int compare(Entry<K, V> o1, Entry<K, V> o2) { return (o2.getValue()).compareTo( o1.getValue() ); } }); List<K> result = new ArrayList<K>(); if(num<0){ result.add(list.get(num).getKey()); for(Entry<K, V> entry : list){ result.add(entry.getKey()); } }else{ for(int i=0;i<num;i++){ result.add(list.get(i).getKey()); } } System.out.println(result); return result; }
标签:
原文地址:http://my.oschina.net/u/1169079/blog/517424