Collectors reducing 使用方法
时间: 2024-04-13 12:28:14 浏览: 119
Collectors是Java 8引入的一个用于对流进行汇总操作的工具类。它提供了一些静态方法,可以用于对流中的元素进行收集和汇总。其中包含了很多常用的汇总器,比如toList、toSet、toMap等。
下面是一些使用Collectors进行汇总操作的示例:
1. 将流中的元素收集到List中:
```java
List<Integer> numbers = Stream.of(1, 2, 3, 4, 5)
.collect(Collectors.toList());
System.out.println(numbers); // 输出:[1, 2, 3, 4, 5]
```
2. 将流中的元素收集到Set中:
```java
Set<Integer> numbers = Stream.of(1, 2, 3, 4, 5)
.collect(Collectors.toSet());
System.out.println(numbers); // 输出:[1, 2, 3, 4, 5]
```
3. 将流中的元素收集到Map中,使用元素作为键,元素的长度作为值:
```java
Map<String, Integer> map = Stream.of("apple", "banana", "orange")
.collect(Collectors.toMap(Function.identity(), String::length));
System.out.println(map); // 输出:{apple=5, banana=6, orange=6}
```
4. 对流中的元素进行分组,将奇数和偶数分别放入两个列表中:
```java
Map<Boolean, List<Integer>> map = Stream.of(1, 2, 3, 4, 5)
.collect(Collectors.partitioningBy(n -> n % 2 == 0));
System.out.println(map); // 输出:{false=[1, 3, 5], true=[2, 4]}
```
这些只是Collectors的一部分使用方法,你可以根据自己的需求使用不同的Collector进行汇总操作。希望对你有所帮助!
阅读全文