【发布时间】:2021-03-08 06:45:41
【问题描述】:
我有一个包含价格和数量的物品清单。我希望得到总和,这是对象列表中所有(产品价格 * 产品数量)的总和。 Java 8 中最好的方法是什么?
我可以通过list..stream().map(Product::getPrice).reduce(BigDecimal.ZERO, BigDecimal::add)); 的流式列表获得所有产品价格的总和,但我不确定如何获得价格和数量的产品。
【问题讨论】:
-
请提供完整的、工作简化的代码示例
-
1:创建方法
getTotal返回产品(价格*数量)并在上面的代码中使用;或 2:使用p -> p.getPrice().multiply(p.getQty())而不是Product::getPrice
标签: java list java-stream bigdecimal