Cin*_*com 1 sorting list hashmap treemap kotlin
这是我的例子,我如何在 Kotlin 中做到这一点?
var hashMapForTry = HashMap<String,Int>()
hashMapForTry.put("Hi",5)
hashMapForTry.put("What",7)
hashMapForTry.put("How",2)
hashMapForTry.put("Go",1)
hashMapForTry.put("Ford",9)
Run Code Online (Sandbox Code Playgroud)
您不能对 a 进行排序,HashMap因为它不能保证其条目将按任何特定顺序迭代。但是,您可以将项目LinkedHashMap排列成保持插入顺序的 a:
val resultMap = hashMapForTry.entries.sortedBy { it.value }.associate { it.toPair() }
println(resultMap)
Run Code Online (Sandbox Code Playgroud)
这里的条目hashMapForTry按条目值排序,然后associate函数将条目列表转换为一个映射,该映射保留该列表中条目的顺序。
此函数的结果类型是Map<String, Int>。如果您需要进一步改变结果,您可以使用associateTofunction 并指定一个空目标LinkedHashMap作为参数:
....associateTo(LinkedHashMap()) { ... }
Run Code Online (Sandbox Code Playgroud)