Kotlin map
2023. 1. 31. 09:16ㆍFrontend/Android
- 목차
반응형
immutable type map
decralation
val map1: Map<String, Int> = mapOf("1" to 1, "2" to 2)
use Pair
val map2: Map<String, Int> = mapOf(Pair("1", 1), Pair("2", 2))
mutable type
- mutableMapOf
- hashMapOf
- linkedMapOf
- sortedMapOf
MutableMap<K, V>
HashMap<K, V>
LInkedHashMap<K, V>
SortedMap<K, V>
declaration
insert
put
val map1: MutableMap<String, Int> = mutableMapOf("1" to 1, "2" to 2)
map1.put("3", 3)
map1.put(Pair("4", 4))
[]
map1["5"] = 5
remove
map1.remove("1")
+ with set
println(map1 + setOf("6" to 6, "7" to 7))
// {1=5, 3=3, 4=4, ...}
containsKey
값의 존재 확인
if (map1.containKey("1")) {
println("it has 1")
}
map1.keys.any { it == "1" }
if (null != map["1"]) {
println("it has 1")
}
null check
if (map[ch] == null) {
map[ch] = 0
}
map[ch] += 1 // ERROR
null 일 수도 있는 경우 항상 null check를 수행해야 합니다.
if (map[ch] == null) {
map[ch] = 0
}
map[ch]?.plus(1) ?: 0
반응형
'Frontend > Android' 카테고리의 다른 글
AVD에 파일 카피 (0) | 2023.02.04 |
---|---|
Android widgets (0) | 2023.02.04 |
Android, Jetpack data binding (0) | 2023.01.29 |
Android RecyclerView (0) | 2023.01.29 |
Jetpack architecture (0) | 2023.01.29 |