从列表中收集偶数到奇数元素以在Kotlin中映射的惯用方法
我需要从列表中获取地图,其中所有偶数元素都应成为键和所有赔率 - 值:
val elements = listOf("k1", "v1", "k2", "v2", "k3", "v3")
val myMap: MutableMap<String, String> = mutableMapOf()
for (i in elements.indices step 2) {
myMap[elements[i]] = elements[i + 1]
}
在 Kotlin 中有没有更惯用的方法来做到这一点?
回答
代码:
val elements = listOf("k1", "v1", "k2", "v2", "k3", "v3")
val map = elements.chunked(2) { it[0] to it[1] }.toMap()
println(map)
输出:
{k1=v1, k2=v2, k3=v3}