Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kotlin 如何在列表中反转贴图和分组值?_Kotlin_Functional Programming - Fatal编程技术网

Kotlin 如何在列表中反转贴图和分组值?

Kotlin 如何在列表中反转贴图和分组值?,kotlin,functional-programming,Kotlin,Functional Programming,我有下面的地图 val maptottransform=mapOf(1到4,2到5,4到4,6到3,9到3) 我想把它转换成地图 val transformedMap=mapOf(3到listOf(6,9),4到listOf(1,4),5到listOf(2)) 我的尝试如下: val trunt=maptottransform.map{it.value to it.key}.groupBy{it.first} 这就给出了{4=[(4,1),(4,4)],5=[(5,2)],3=[(3,6)

我有下面的地图

val maptottransform=mapOf(1到4,2到5,4到4,6到3,9到3)
我想把它转换成地图

val transformedMap=mapOf(3到listOf(6,9),4到listOf(1,4),5到listOf(2))
我的尝试如下:

val trunt=maptottransform.map{it.value to it.key}.groupBy{it.first}
这就给出了
{4=[(4,1),(4,4)],5=[(5,2)],3=[(3,6),(3,9)]}


有什么帮助吗?

除了
键选择器之外,还有一个groupBy重载,它接受
值转换

maptottransform.map{it.value to it.key}.groupBy({it.first},{it.second})
但是你可以简化你的第一部分,因为你不需要事先交换东西:

mapToTransform.entries.groupBy({it.value},{it.key})

除了
键选择器
之外,还有一个groupBy重载,它接受
值转换

maptottransform.map{it.value to it.key}.groupBy({it.first},{it.second})
但是你可以简化你的第一部分,因为你不需要事先交换东西:

mapToTransform.entries.groupBy({it.value},{it.key})

maptottransform.entries.groupBy({it.value},{it.key})
我真的要发布那篇文章或
maptottransform.entries.groupBy({it.value},{it.key})
我真的要发布那篇文章了