java - BigDecimal 的总和列表

标签 java list collections java-7

我正在使用 Spring、Maven 和 Java 7 开发一个项目。

我有一个带有 bigdecimal 的列表,必须对列表中的所有元素求和。我知道使用 for 循环我们可以如下所示,

List<BigDecimal> list = new ArrayList<BigDecimal>();
list.add(new BigDecimal(10.333));
list.add(new BigDecimal(14.333));
BigDecimal result = new BigDecimal(0);
for (BigDecimal b : list) {
     result = result.add(b);
}

有更好的方法吗?使用 google gauva FluentIterable 或 apache ArrayUtils/StatUtils?

最佳答案

这是一种仅使用 Java 8 和流的方法:

List<BigDecimal> list = Arrays.asList(new BigDecimal(10.333), //
   new BigDecimal(14.333));
BigDecimal result = list.stream().reduce(BigDecimal.ZERO, BigDecimal::add);

关于java - BigDecimal 的总和列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33168049/

相关文章:

java - 将文件写入磁盘时锁定文件

java - 如何使用空键处理迭代中的空指针

c# - IEnumerable 和顺序

c# - 只读列表<字典<>>

java - 在现有分支中从 java 运行 hg log 命令

java - 回调作为 C 结构的参数 - Java 包装器生成

将用户添加到数据库中的 Java 程序

C#:参数关键字与列表

r - 将列表中多个矩阵的上三角复制到下三角

java - 在X和Y之间创建随机数,在Java中不能是Z : remove element from list