public List<Map.Entry<Integer,BigDecimal>> sortByMapValue(HashMap<Integer, BigDecimal> map){ ArrayList<Map.Entry<Integer, BigDecimal>> list = new ArrayList<>(map.entrySet()); Collections.sort(list, new Comparator<Map.Entry<Integer, BigDecimal>>() { @Override public int compare(Map.Entry<Integer, BigDecimal> o1, Map.Entry<Integer, BigDecimal> o2) { if (o1.getValue() == null || o2.getValue() == null){ return -1; } return o2.getValue().compareTo(o1.getValue()); } }); return list; }
参考文章;https://www.cnblogs.com/liujinhong/p/6113183.html