[Kotiln] Map정렬
2022. 4. 27. 03:15ㆍETC/Kotlin
728x90
반응형
키 값을 기준으로 정렬 : toSortedMap
sorted는 정렬된 List 타입을 반환하므로 이를 다시 저장해주어야 함
package com.example.solution
fun main() {
var aa = mutableMapOf<String, Int>("zz" to 1, "bb" to 5, "aa" to 2)
println("처음" + aa)
val mm = aa.toSortedMap(compareBy {it} )
val mm2 = aa.toSortedMap(compareByDescending {it} )
println("오름차순" + mm)
println("내림차순" + mm2)
}
Value 값을 기준으로 정렬
Map을 List로 변환한 후 정렬 해주고 다시 Map으로 변환
package com.example.solution
fun main() {
val mm = mutableMapOf(1 to "za", 3 to "yd", 2 to "zzz", 4 to "aa")
println(mm)
//리스트로 변환
var mapToList = mm.toList()
for(i in mapToList) {
println("${i.first}:${i.second}")
}
println("---------정렬------------")
val tl2 = mapToList.sortedBy { it.second }
val tl22 = mapToList.sortedByDescending { it.second }
println(tl2)
println(tl22)
println("---------toMutableMap------------")
val mm2 = tl2.toMap().toMutableMap()
mm2.forEach{(k, v) -> print("${k}:${v} ")}
println()
println("---------리스트와 맵 차이------------")
val mm3 = mm.toList().sortedBy { it.second }
println(mm3)
val mm33 = mm.toList().sortedBy { it.second }.toMap().toMutableMap()
println(mm33)
}
참조
https://notepad96.tistory.com/entry/map-2
Kotlin sort map by value - 맵 값(Value)으로 정렬
1. Map value sort Map은 Key/Value 쌍의 값을 갖는 구조이다. 기존 Map에서는 toSortedMap 함수를 사용하여서 Key값을 기준으로 오름차순, 내림차순 등 정렬을 할 수 있었다. Kotlin Map, MutableMap 추가, 삭제..
notepad96.tistory.com
728x90
반응형
'ETC > Kotlin' 카테고리의 다른 글
[Kotiln] 작은수 큰수비교 coerceAtLeast, coerceAtMost (0) | 2022.04.28 |
---|---|
[Kotiln] List추출 slice(), take() (0) | 2022.04.28 |
[Kotiln] List정렬 (0) | 2022.04.27 |
[Kotiln] List&Map (0) | 2022.04.26 |
[Kotiln] 해시 (0) | 2022.04.25 |