Collectors.groupingBy对bigdecimal求和
时间: 2023-11-09 14:02:06 浏览: 182
BigDecimal的计算
可以使用Collectors.groupingBy和Collectors.reducing来对BigDecimal进行求和。示例代码如下:
```
Map<String, BigDecimal> map = list.stream()
.collect(Collectors.groupingBy(
MyClass::getCategory,
Collectors.reducing(BigDecimal.ZERO, MyClass::getAmount, BigDecimal::add)
));
```
其中,MyClass是包含category和amount属性的类,list是包含MyClass对象的列表。上述代码将列表按照category分组,并对每组的amount进行求和,最终得到一个Map,其中key为category,value为对应的总和。
阅读全文