zoukankan      html  css  js  c++  java
  • java8的新特性,Collections.sort(排序的List集合)的使用,对list封装Map里面的某个值进行排序

    --------------------------对简单list的排序----------------------------------
    List<Integer> list = new ArrayList<>();
    list.add(1);
    list.add(2);
    list.add(3);
    list.add(4);
    Collections.sort(list)

    排序前是:
      1
      2
      3
      3

    排序后:
      4
      3
      2
      1
    ------------------------------------------------------------------

    ----------------------------对list封装Map里面的某个值进行排序-------------------------------------
    List<Map<String,Object>> mapList = new ArrayList<Map<String,Object>>();
    
    Collections.sort(mapList,new Comparator<Map<String,Object>>() {
                //降序排序
                public int compare(Map<String, Object> o1, Map<String, Object> o2) {
                    double s = Double.parseDouble(o1.get("dist").toString());  //由于从map里面取出来的值为Object类型,无法直接转换为Integer类型,需要转换为double
                    double d = Double.parseDouble(o2.get("dist").toString());
                    Double D1 = new Double(s); //由于double类型无法直接转换为Integer类型,需要用封装类先封装double
                    Double D2 = new Double(d);
                    Integer s1 = D1.intValue();  //使用Double的intValue方法转换为Integer类型
                    Integer s2 = D2.intValue();
                    //使用Entry类中的值来比较大小
                    return s1.compareTo(s2);  //s1在前面是升序,s1在后面是降序
    //              //使用Entry类中的键来比较大小
    //                return o2.getKey().compareTo(o1.getKey());
                }
            });


    才疏学浅,总结得不好,希望能够帮上需要的人。
  • 相关阅读:
    【文学文娱】《屌丝逆袭》-出任CEO、迎娶白富美、走上人生巅峰
    天纵英才-阿里巴巴《马云》
    我的《大宋王朝》
    《1024 程序员节》—我喂自己袋盐
    【文学文娱】《失控》读后感
    《由河南人--首富许家印说起》
    《将博客搬至CSDN》
    【置顶】技术每天一点点--2017.09-2018.10月
    saltstack的简单搭建
    rabbitMQ基础应用
  • 原文地址:https://www.cnblogs.com/chenchengxuyuan/p/10497120.html
Copyright © 2011-2022 走看看