【发布时间】:2016-05-02 15:44:43
【问题描述】:
我有这段代码,但它是按值按升序对 hashMap 进行排序,我想按降序对 HashMap 进行排序。
public Map<String, Float> sortByValue(Map<String, Float> map) {
List list = new LinkedList(map.entrySet());
Collections.sort(list, new Comparator() {
public int compare(Object o1, Object o2) {
return ((Comparable) ((Map.Entry) (o1)).getValue())
.compareTo(((Map.Entry) (o2)).getValue());
}
});
Map result = new LinkedHashMap();
for (Iterator it = list.iterator(); it.hasNext();) {
Map.Entry entry = (Map.Entry)it.next();
result.put(entry.getKey(), entry.getValue());
}
return result;
}
例如我的哈希图:
("word",0.7) , ("word2",1.0)
我想成为这样的订单:
("word2",1.0) , ("word,0.7")
【问题讨论】: