美文网首页
stream流对list排序

stream流对list排序

作者: 尘埃里的玄 | 来源:发表于2024-05-07 08:52 被阅读0次
List<LinkedHashMap<String, Object>> roomList = new ArrayList<>();

if (StringUtils.isNotBlank(sortField)) {
            List<HashMap<String, Object>> rooms = new ArrayList<>();
            if ("asc".equals(sortStyle)) {
//中文排序
                if ("ConsumerName".equals(sortField) || "AmMeter_Name".equals(sortField)) {
                    rooms = roomList.stream().sorted((a, b) ->
                            Collator.getInstance(Locale.CHINA).compare(a.get(sortField).toString(), b.get(sortField).toString())
                    ).collect(Collectors.toList());
                } else {
//数字排序
                    rooms = roomList.stream().sorted(((o1, o2) -> Double.valueOf(o1.get(sortField).toString()).compareTo(Double.valueOf(o2.get(sortField).toString())))).collect(Collectors.toList());
                }
            } else {
                if ("ConsumerName".equals(sortField) || "AmMeter_Name".equals(sortField)) {
                    rooms = roomList.stream().sorted((a, b) ->
                            Collator.getInstance(Locale.CHINA).compare(b.get(sortField).toString(), a.get(sortField).toString())
                    ).collect(Collectors.toList());
                } else {
                    rooms = roomList.stream().sorted(((o1, o2) -> Double.valueOf(o2.get(sortField).toString()).compareTo(Double.valueOf(o1.get(sortField).toString())))).collect(Collectors.toList());
                }
            }
            map.put("RoomList", rooms);
        } else {
            map.put("RoomList", roomList);
        }
        map.put("sumAfterMulCoefficientValue", sumAfterMulCoefficientValue);

相关文章

  • 2020-12-25

    1.java8 Stream流模式懒模式 2.map、list的遍历 . list将要求的值移除, map.for...

  • 无标题文章

    List转成List 形式 List idList = dtoList.stream().map(e -> e.g...

  • jdk8 流操作

    stream操作 list排序 list 按指定条数分割

  • 【JAVA】Lambda使用

    List转Map 排序

  • Stream -> List & Map

  • Stream流

    体验Stream Stream流生产方式生成流list.stream()中间操作filter()终结操作forEa...

  • java8 lambda stream常用用法

    stream api 将list转成map映射 简介 有一个list,需要将里面的对象转成map映射,用lambd...

  • Java8中的Collectors.toMap

    Collectors.toMap会经常和流stream配合使用,可以将一个List转化为Map。在使用的过程中需要...

  • 集合

    java集合接口有List,Set,Map。 List和Set都实现了Collection(对集合排序,遍历)接口...

  • 2020-07-20Stream流

    Stream流的生成方式 stream流的使用 生成流通过数据源(集合,数组等)生成流list.stream() ...

网友评论

      本文标题:stream流对list排序

      本文链接:https://www.haomeiwen.com/subject/qkprfjtx.html