一、规约求和
当我们有一个集合需要将集合内的某个字段求求和、就需要用到Stream
的规约操作,也就是reduce操作
@Test
public void test2() {
new Persion(new BigDecimal(1000));
List<Persion> list = new ArrayList<>();
list.add(new Persion(new BigDecimal(1000)));
list.add(new Persion(new BigDecimal(2000)));
list.add(new Persion(new BigDecimal(3000)));
list.add(new Persion(new BigDecimal(4000)));
list.add(new Persion(new BigDecimal(5000)));
// 规约操作求和
// 写法1
Optional<BigDecimal> reduce = list.stream().map(Persion::getInCome).reduce(BigDecimal::add);
// 写法2
list.stream().map(Persion::getInCome).reduce((a,b)-> {return a.add(b);});
}