reportingList.stream().sorted(Comparator.comparing(e->MapUtils.getInteger(e,"value"),Comparator.nullsLast(Integer::compareTo))).collect(Collectors.toList());
时间: 2024-04-27 09:20:33 浏览: 129
List对象集合的排序:比较器Comparator(简单例子)
这是一个 Java 8 中的流式操作,对 `reportingList` 中的元素进行排序,并将排序后的结果收集到一个新的列表中。具体来说:
- `stream()` 方法将 `reportingList` 转换为一个流(Stream)。
- `sorted()` 方法对流中的元素进行排序。这里使用了一个比较器(Comparator)来指定排序方式。这个比较器先按照元素中名为 "value" 的属性进行升序排序,如果这个属性值为 null,则将其排在最后。
- `collect()` 方法将排序后的结果收集到一个新的列表中,并返回这个列表。
需要注意的是,这里的 `MapUtils` 是 Apache Commons Lang 中的一个工具类,用于处理 Map 类型的数据。`getInteger()` 方法用于获取 Map 中指定键("value")对应的值,并将其转换为 Integer 类型。如果值为 null,则返回 null。
阅读全文