当前位置:   article > 正文

java 使用stream累加对象中某个属性的值并返回总和_java stream 累加

java stream 累加

假设有一个包含对象的List列表,每个对象都有一个属性value,可以使用Java 8中的Stream流来累加对象中某个属性的值并返回总和。以下是一些可能的实现方法:

1、使用reduce方法:

List<MyObject> list = ...;
int sum = list.stream().mapToInt(MyObject::getValue).reduce(0, Integer::sum);
  • 1
  • 2

这里使用了mapToInt方法将每个对象转换为其value属性的值,然后使用reduce方法将这些值累加起来。
2、使用sum方法:

List<MyObject> list = ...;
int sum = list.stream().mapToInt(MyObject::getValue).sum();
  • 1
  • 2

这里也使用了mapToInt方法将每个对象转换为其value属性的值,然后使用sum方法将这些值累加起来。
3、使用forEach方法:

List<MyObject> list = ...;
AtomicInteger sum = new AtomicInteger();
list.stream().forEach(o -> sum.addAndGet(o.getValue()));
  • 1
  • 2
  • 3

这里使用了AtomicInteger来存储总和,并使用forEach方法遍历每个对象并将其value属性的值累加到总和中。
无论使用哪种方法,都应该根据实际情况选择最合适的方法。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/768031
推荐阅读
相关标签
  

闽ICP备14008679号