List<Integer> intList = Arrays.asList(1,2,3);
Optional<Integer> result1=intList.stream().reduce(Integer::sum);
Integer result2=intList.stream().reduce(100, Integer::sum);
System.out.println(result2);
int value1 = Stream.of(1, 2, 3, 4, 5).reduce(new BinaryOperator<Integer>() {
@Override
public Integer apply(Integer integer, Integer integer2) {
return integer + integer2;
}
}).get();
System.out.println(value1);
//带初始值
int value2 = Stream.of(1, 2, 3, 4, 5).reduce(100, (item1, item2) -> item1 + item2);
System.out.println(value2);
//求出最大值
int value3 = Stream.of(1645, 234345, 32, 44434, 564534, 435, 34343542, 212)
.reduce((item1, item2) -> item1 > item2 ? item1 : item2).get();
System.out.println(value3); 控制台输出

本文作者为DBC,转载请注明。