星星博客 »  > 

对集合进行排序

对集合进行排序

 /**
     * 将集合按照降序排列-FLOAT
     *
     * @param nowPartTwoData
     * @return
     */
    private static List<Map.Entry<String, Integer>> sortByValueFloatDesc(Map<String, Integer> nowPartTwoData) {
        //这里将map.entrySet()转换成list
        List<Map.Entry<String, Integer>> list = new ArrayList<Map.Entry<String, Integer>>(nowPartTwoData.entrySet());
        //然后通过比较器来实现排序
        Collections.sort(list, new Comparator<Map.Entry<String, Integer>>() {
            //降序排序
            @Override
            public int compare(Map.Entry<String, Integer> o1,
                               Map.Entry<String, Integer> o2) {
                return o2.getValue().compareTo(o1.getValue());
            }
        });
        //截取前10
        list = list.subList(0, 10);
        return list;

相关文章