前言
最近需要求一个list中的某个字段的和,想到是否可以用stream中的方法,查询了一下,还真是可以,记录一下
实现
我的是计算价格,所以字段类型是BigDecimal
,方法如下
1
| list.stream().map(Plan::getAmount).reduce(BigDecimal.ZERO,BigDecimal::add);
|
如果是int
double
long
,则方法如下
1
| double max = list.stream().mapToDouble(User::getHeight).sum();
|