BigDecimal使用stream求和
时间: 2023-11-08 07:47:31 浏览: 104
你可以使用`BigDecimal`的`stream`方法来对一组`BigDecimal`进行求和操作。首先,将这组`BigDecimal`转换为一个`Stream<BigDecimal>`,然后使用`reduce`方法对它们进行求和。
下面是一个示例代码:
```java
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<BigDecimal> numbers = new ArrayList<>();
numbers.add(new BigDecimal("1.2"));
numbers.add(new BigDecimal("2.5"));
numbers.add(new BigDecimal("3.8"));
numbers.add(new BigDecimal("4.1"));
BigDecimal sum = numbers.stream()
.reduce(BigDecimal.ZERO, BigDecimal::add);
System.out.println("Sum: " + sum);
}
}
```
在上面的示例中,我们创建了一个包含几个`BigDecimal`对象的列表。然后,我们使用`stream`方法将列表转换为一个流,并使用`reduce`方法求和。通过将初始值设置为`BigDecimal.ZERO`,并使用`BigDecimal::add`作为二元操作符,我们可以将所有元素相加得到总和。最后,我们打印出求和的结果。
希望这可以帮助到你!如有其他问题,请随时提问。
阅读全文