fun sortHashMapByValue(hashMap: HashMap<String, Int>): LinkedHashMap<String, Int> {
val sortedMap = hashMap.entries.sortedBy { it.value }.associateBy({ it.key }, { it.value }) as LinkedHashMap<String, Int>
return sortedMap
}
fun main() {
val hashMap = hashMapOf("key1" to 3, "key2" to 1, "key3" to 2)
val sortedMap = sortHashMapByValue(hashMap)
println(sortedMap)
}
上記のコードでは、sortHashMapByValue
という関数が定義されています。この関数は、与えられたハッシュマップを値でソートし、ソートされた結果をLinkedHashMap
として返します。
sortedBy
関数を使用して、ハッシュマップのエントリを値でソートします。associateBy
関数を使用して、ソートされたエントリをLinkedHashMap
に変換します。
main
関数では、hashMap
を作成し、sortHashMapByValue
関数を呼び出してソートされた結果を取得し、出力します。
これにより、Kotlinでハッシュマップを値でソートする方法が実現されます。