Java8 stream 怎么分组统计
时间: 2023-06-02 07:04:31 浏览: 126
JAVA8 stream中三个参数的reduce方法对List进行分组统计操作
5星 · 资源好评率100%
可以使用Collectors.groupingBy()方法进行分组统计。示例代码如下:
```
List<Person> people = Arrays.asList(
new Person("John", 30),
new Person("Julie", 35),
new Person("Jane", 25),
new Person("Jake", 25),
new Person("Jack", 30)
);
Map<Integer, Long> countByAge = people.stream()
.collect(Collectors.groupingBy(Person::getAge, Collectors.counting()));
System.out.println(countByAge);
```
输出结果为:
```
{25=2, 30=2, 35=1}
```
其中,Person是一个自定义的类,包含name和age两个属性。使用stream进行分组统计时,先使用groupingBy方法指定分组的属性,然后使用counting方法统计数量。
阅读全文