gpt4 book ai didi

java - 如何将以列表作为键的映射转换为合并列表值的集合?

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:33:13 25 4
gpt4 key购买 nike

我有一个看起来像这样的结构:

Map<Long, List<Double>

我想把它转换成

List<Double>

结果列表中的每一项代表一个键值的总和。使用示例 map :

{1: [2.0, 3.0, 4.0],
2: [1.5, 10.0]}

我想达到的结果:

[9.0, 11.5]

[11.5, 9.0]

(顺序无关紧要)。Java 8 merge() 方法有可能吗?实际上上面的案例有点简化,因为实际上我的 List 是用一些复杂的类参数化的,我想创建这个类的合并对象,但我只想在这里掌握总体思路。

最佳答案

尝试:

Map<Long, List<Double>> map = // ...
List<Double> sums = map.values()
.stream()
.map(l -> l.stream().mapToDouble(d -> d).sum())
.collect(Collectors.toList())

关于java - 如何将以列表作为键的映射转换为合并列表值的集合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32083896/

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