ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Kotlin] Map
    Kotlin 2022. 9. 14. 16:20

    Map : Key 와 Value 로 데이터를 관리하는 컬렉션

    -mapOf : 불변형 Map을 생성

    -mutableMapOf : 가변형 Map을 생성

    fun main(){
        // <String, Int> : String-key 값의 자료형    Int-value 값의 자료형
        val map1 = mapOf<String, Int>("key1" to 10, "key2" to 20, "key3" to 30)
        println("map1 : $map1")
        
        val map2 = mutableMapOf<String, Int>()
        println("map2 : $map2")
        
        // <String, Int> : String-key 값의 자료형    Any-value 값의 자료형
        val map3 = mapOf<String, Any>("key1" to 10, "key2" to 11.11, "key3" to true)
        println("map3 : $map3")
    }
     
     
    맵의 자료에 접근하는 방법

    - get : 이름을 통해 객체 추출 가능
    - Kotlin의 Map은 [ ] 사용 가능

        println("map1 key1 : ${map1.get("key1")}")
        println("map1 key2 : ${map1["key2"]}")
     
     
    기타 메서드

    - size : 관리하는 요소의 개수

    - keys : key를 배열로 반환

    - values : 객체들을 배열로 반환

    - containsKey : 지정된 이름으로 저장된 객체가 있는지 확인

    - containsValue : 지정된 값으로 저장된 객체가 있는지 확인

        println("map1 size : ${map1.size}")
        println("map1 keys : ${map1.keys}")
        println("map1 values : ${map1.values}")
        println("map1 contains key1 : ${map1.containsKey("key1")}")
        println("map1 contains key100 : ${map1.containsKey("key100")}")
        println("map1 contains value 10 : ${map1.containsValue(10)}")
        println("map1 contains value 100 : ${map1.containsValue(100)}")

     

    가변형 MAP 에 요소 추가 삭제

    - put : 객체를 추가한다. 기존 이름과 동일할 경우 덮어 씌움

    - remove : 주어진 이름으로 저장된 객체를 제거

        map2.put("key1", 100)  // 키값과 밸류값을 제공하여 추가
        println("map2 : $map2")
        map2["key2"] = 200  // 키값을 인데스와 같이 사용하여 추가
        println("map2 : $map2")
        map2.put("key1", 1000)  // 이미 존재하는 키값으로 요소를 추가하면 해당 밸류값이 수정됨
        map2["key2"] = 2000  // 이미 존재하는 키값으로 요소를 추가하면 해당 밸류값이 수정됨
        println("map2 : $map2")
        map2.remove("key1")
        println("map2 : $map2")
     

     

    가변형과 불변형간의 변환

        val map100 = map1.toMutableMap()
        map100["key100"] = 1000
        println("map100 : $map100")
        val map200 = map100.toMap()
        //map200["key200"] = 2000

    'Kotlin' 카테고리의 다른 글

    [Kotlin] Card Game  (0) 2022.09.14
    [Kotlin] Set  (0) 2022.09.14
    [Kotlin] List  (0) 2022.09.14
    [Kotlin] TypeCasting  (0) 2022.09.14
    [Kotlin] Companion  (0) 2022.09.14

    댓글

Designed by Tistory.