使用stream流对某个对象中的BigdDecimal类型属性进行求和
时间: 2024-05-04 21:20:38 浏览: 101
假设有一个对象类 `MyObject`,其中有一个属性 `BigDecimal value`,你可以使用 Java 8 的 Stream API 对这个类的集合进行求和操作。
先假设有一个 `List<MyObject> myList`,可以使用以下代码进行求和操作:
```
BigDecimal sum = myList.stream().map(MyObject::getValue).reduce(BigDecimal.ZERO, BigDecimal::add);
```
这个代码将 `myList` 中的每个 `MyObject` 对象转换为其 `value` 属性,然后使用 `reduce` 方法将它们累加到一个 `BigDecimal` 值中。
如果想要对一个数组进行求和操作,可以使用以下代码:
```
BigDecimal sum = Arrays.stream(myArray).map(MyObject::getValue).reduce(BigDecimal.ZERO, BigDecimal::add);
```
这个代码将 `myArray` 中的每个 `MyObject` 对象转换为其 `value` 属性,然后使用 `reduce` 方法将它们累加到一个 `BigDecimal` 值中。
阅读全文