Kotlin映射键的顺序保持
我找不到任何明确说明的文件来解决以下情况下的订单保留问题Kotlin映射键的顺序保持,kotlin,Kotlin,我找不到任何明确说明的文件来解决以下情况下的订单保留问题 val map = mapOf( "k2" to "v1", "k1" to "v2", "k3" to "v3" ) val keys = map.keys.toList() 我希望钥匙始终按以下顺序排列: ["k2", "k1", "k3"] 是否保
val map = mapOf(
"k2" to "v1",
"k1" to "v2",
"k3" to "v3"
)
val keys = map.keys.toList()
我希望钥匙始终按以下顺序排列:
["k2", "k1", "k3"]
是否保证密钥的顺序与它们初始化时的顺序相同?是的,如果您查看的实现,它使用了LinkedHashMap,其中指出它通常保留密钥顺序,除非在重新插入密钥的情况下 但是,如果内部实现可能由于某种原因而发生变化,我建议使用与您使用
mapOf
相同的方法
LinkedHashMap
在返回确保正确顺序的键的集合时使用实现。是的,如果您查看的实现,它使用LinkedHashMap,从中可以看出它通常保留键顺序,除非重新插入键
但是,如果内部实现可能由于某种原因而发生变化,我建议使用与您使用mapOf
相同的方法
LinkedHashMap
在返回键的Set
时使用实现,以确保正确的顺序