对String,Double类型的Map根据Value数值由大到小排序

在实际中经常用到对<String,Double>类型的Map根据Value数值由大到小排序,可是每次都记不住代码,需要花好长时间去查找,现在放在这里,方便以后查找。

List<Map.Entry<String, Double>> wordMap = new ArrayList<Map.Entry<String, Double>>(patternScoresMap.entrySet());
    Collections.sort(wordMap, new Comparator<Map.Entry<String, Double>>() {//根据value排序
     public int compare(Map.Entry<String, Double> o1,
       Map.Entry<String, Double> o2) {
      double result = o2.getValue() - o1.getValue();
      if(result > 0)
       return 1;
      else if(result == 0)
       return 0;
      else
       return -1;
     }
    });

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/d03691e62335da0bdfaf20ded83f6554.html