java8 bigdecimal类型的list求和
在java 8中,如果你有一个list<bigdecimal>并且想要计算这个列表中所有bigdecimal数值的总和,你可以使用stream api的reduce方法。
reduce方法接受一个二元操作符,用于组合流中的元素。
对于bigdecimal类型,你应该使用bigdecimal类中的add方法来实现求和。
对list<bigdecimal>求和示例
import java.math.bigdecimal; import java.util.arrays; import java.util.list; public class bigdecimalsumexample { public static void main(string[] args) { list<bigdecimal> list = arrays.aslist( new bigdecimal("10.5"), new bigdecimal("15.75"), new bigdecimal("20.35"), new bigdecimal("5.50") ); bigdecimal sum = list.stream() .reduce(bigdecimal.zero, bigdecimal::add); system.out.println("sum: " + sum); // 输出: sum: 52.10 } }
在这个例子中
我们首先创建了一个包含几个bigdecimal对象的列表。
然后,我们使用stream()方法将列表转换为一个流,接着调用reduce方法。
- reduce方法的第一个参数是总和的初始值(在这个例子中是bigdecimal.zero)
- 第二个参数是一个bigdecimal::add方法引用,它用于将流中的每个元素与累加器中的当前值相加
最后,我们将得到的总和打印出来。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。
发表评论