stream.reduce方法
时间: 2023-07-20 20:26:52 浏览: 97
Java 8系列之Stream中万能的reduce用法说明
`reduce` 是 Java 8 中的一个方法,它用于将流中的元素累积到一个单一的结果中。它接受一个初始值和一个二元操作符,并且将流中的元素一个一个地传递给该操作符。操作符将前面的结果和当前元素组合起来,生成一个新的结果。
`reduce` 方法的语法如下:
```java
T reduce(T identity, BinaryOperator<T> accumulator)
```
其中,`identity` 是起始值,也就是当流为空时返回的值,`accumulator` 是一个二元操作符,用于将前面的结果和流中的当前元素组合起来。
例如,我们可以使用 `reduce` 方法对一个 `Integer` 类型的流进行求和:
```java
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
int sum = numbers.stream().reduce(0, (a, b) -> a + b);
System.out.println(sum); // 输出 15
```
在这个例子中,我们将初始值设为 0,然后将流中的每个元素都加起来。
阅读全文