java strem分组
时间: 2024-05-06 15:18:16 浏览: 73
JAVA8 STREAM COLLECT GROUPBY分组实例解析
Java Stream API 提供了一个 `Collectors.groupingBy()` 方法,可以用于将流中的元素按照指定的条件进行分组。这个方法接收一个 `Function` 类型的参数,用于指定分组的条件,返回一个 `Collector` 类型的结果,用于将分组后的元素收集到一个 Map 中。
例如,假设有一个 Student 类,包含 name 和 score 两个属性,我们想要按照 score 的值将学生分组,可以使用以下代码:
```
List<Student> students = new ArrayList<>();
Map<Integer, List<Student>> groupedStudents = students.stream()
.collect(Collectors.groupingBy(Student::getScore));
```
这段代码将会把学生按照 score 值进行分组,最终将分组后的结果收集到一个 Map 中,其中 key 是 score 的值,value 是一个 List,包含所有 score 相等的学生对象。
阅读全文