gpt4 book ai didi

java - 如何使用 Java 中的 Collectors 聚合多个字段

转载 作者:行者123 更新时间:2023-12-02 08:00:55 25 4
gpt4 key购买 nike

我有一个自定义对象逐项,它有两个字段金额和税收。我有一个逐项对象数组,我希望对同一流中的两个字段求和。下面是我计算两个字段之和的方法。

double totalAmount = Arrays.stream(getCharges()).map(Itemized::getAmount).reduce(0.0, Double::sum));
double totalTax = Arrays.stream(getCharges()).map(Itemized::getTax).reduce(0.0, Double::sum));

有什么方法可以让我不必解析流两次并且可以一次性对两个字段求和?我不想对totalTax 和totalAmount 求和,而是想分别求和。我正在查看 Collectors,但找不到任何允许一次性聚合多个字段的示例。

最佳答案

使用for循环?

double taxSum = 0;
double amountSum = 0;
for (Itemized itemized : getCharges()) {
taxSum += itemized.getTax();
amountSum += itemized.getAmount();
}

关于java - 如何使用 Java 中的 Collectors 聚合多个字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58229186/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com