我正在尝试使用一个List<Map<String,Integer>>
流来合并包含的所有映射到一个映射中。这是为了将多个请求响应聚合成一个。
考虑以下数据集(使用JSON使其更易于阅读):
[
{"field1": 1, "field2": 5},
{"field2": 6, "field3": 10},
{"field1": 3, "field4": 15}
]
我希望它会得出以下结果(顺序不重要):
{"field1": 4, "field2": 11, "field3": 10, "field4": 15}
我想把所有的键加起来,然后将它们组合成单个映射。在Java 8的Stream接口中有没有一种好的方法可以做到这一点?我发现
Collectors.groupingBy(o -> o, Collectors.counting())
,所以也许我走对了方向,只需要在此之前弄清楚如何合并它们,而不会破坏结果。提前感谢您的帮助。