使用stream流grouping by将list对象中三个条件依次分组
时间: 2024-05-11 17:14:50 浏览: 74
java1.8 中 stream 的 groupingBy 最大值、最小值分组
可以这样实现:
```
Map<String, Map<String, Map<String, List<Object>>>> groupedMap = list.stream()
.collect(Collectors.groupingBy(obj -> obj.getCondition1(),
Collectors.groupingBy(obj -> obj.getCondition2(),
Collectors.groupingBy(obj -> obj.getCondition3()))));
```
其中,`Condition1`、`Condition2`、`Condition3`分别表示三个条件。`groupedMap`是一个Map嵌套结构,可以通过三个条件依次进行分组。
阅读全文