gpt4 book ai didi

java - Map Stream 获取 Key 和 Value 乘积的总和

转载 作者:搜寻专家 更新时间:2023-10-31 19:59:14 27 4
gpt4 key购买 nike

给定一个 Map<Long, Integer> ,使用java 8 map stream,你如何计算总数

Long result 中所有条目的总和变量?

例如:[{100:1}, {100,2}]

result = (100*1) + (100*2) = 300

这是我使用迭代的方式:

Map<Long, Integer> map = //init map
Long sum = 0;
for (Map.Entry<String, String> entry : map.entrySet()) {
sum+= (entry.getKey() * entry.getValue());
}

我在想一些事情:

map.entrySet().stream()
.forEach(entry -> entry.getKey() * entry.getValue())
.sum()

最佳答案

这应该可以解决问题。

long sumOfProducts = map.entrySet().stream().mapToLong(e -> e.getKey() * e.getValue()).sum();

关于java - Map Stream 获取 Key 和 Value 乘积的总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57177120/

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