kotlin合并地图列表



我想按id分组。

[
{
"id": 1,
"name": "a"
},
{
"id": 2,
"name": "b"
},
{
"id": 3,
"name": "c"
}
]

结果应如下:

{
"1": "a",
"2": "b",
"3": "c"
}

在科特林,最惯用的方法是什么?

您的问题只显示JSON,所以我不确定这是关于JSON序列化还是Kotlin。由于它被标记为kotlin,我假设您已经使用类似的东西将初始列表反序列化为Kotlin

data class NamedThing(val id: Int, val name: String)
val list: List<NamedThing> = TODO("somehow you're getting a list of those here")

如果你已经有了这个,你可以使用从这个列表中轻松创建地图

val map = list.associate { it.id to it.name }

最新更新