gpt4 book ai didi

Kotlin - 从 map 列表,到按键分组的 map

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

我有一个 List<Map<Branch,Pair<String, Any>>>我想转换成一个 Map<Branch,List<Pair<String, Any>>> .

因此,如果我有一个只有 2 个元素的初始列表:

列表

1. branch1 -> Pair(key1,value1)

branch2 -> Pair(key2,value2)


2. branch1 -> Pair(key1a,value1a)

我想结束:

map
branch1 -> Pair(key1,value1)

Pair(key1a,value1a)

branch2 -> Pair(key2,value2)

所以一种 gr​​oupBy,使用初始嵌套映射中键的所有值..

我试过
list.groupBy{it-> it.keys.first()} 

但显然它不起作用,因为它只使用第一个键。我想要相同的,但使用所有键作为单独的值。

在 Kotlin 中这样做最惯用的方法是什么?我有一个丑陋的 Java 工作版本,但我很确定 Kotlin 有一个很好的方法。只是到目前为止我还没有找到它!

任何的想法 ?

谢谢

最佳答案

下列:

val result =
listOfMaps.asSequence()
.flatMap {
it.asSequence()
}.groupBy({ it.key }, { it.value })

会给你 result类型 Map<Branch,List<Pair<String, Any>>>与您要求的内容。

关于Kotlin - 从 map 列表,到按键分组的 map ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53433108/

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