Kotlin - Collection

컬렉션입니다. 배열과 비슷하다 생각하시면 됩니다.
제가 봤을 땐 약간의 자료구조의 내용이 포함되어 있는 것 같습니다.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
package com.example.myapplication.kotlin

fun main(array: Array<String>){

    // Immutable
    // list
    var listnum = listOf<Int>(1,2,2,3)
    println(listnum)

    // set
    val setnum = setOf<Int>(1,2,2,3,3,3,4)
    println(setnum)
    setnum.forEach{
        println(it)
    }
    // map
    val mapnum = mapOf<String, Int>("one" to 1, "two" to 2)
    println(mapnum)
    println(mapnum.get("one"))

    //mutable collection
    //list
    val listnum2 = mutableListOf<Int>(1,2,3)
    println(listnum2)
    listnum2.add(3,4)
    listnum2.add(0,100)
    listnum2.removeAt(1)
    println(listnum2)

    //set
    val setnum2 = mutableSetOf<Int>(1,2,2,3,3,3)
    println(setnum2)
    setnum2.add(4)
    setnum2.remove(1)
    println(setnum2)

    val mapnum2 = mutableMapOf<String, Int>("one" to 1)
    println(mapnum2)
    mapnum2.put("two",2)
    mapnum2.replace("one", 3)
    println(mapnum2)
    mapnum2.clear()
    println(mapnum2)
}

컬렉션에는 가변(Mutable)과 불변(Immutable)으로 나눌 수 있습니다.
선언 후에 값을 바꿀 수 있다면 가변 바꿀 수 없으면 불변입니다.

컬렉션에는 list, set, map이 있습니다. Mutable일 때는 23번 줄 처럼 mutable이 붙게 되고 Immutable일 때는 붙지 않습니다. 
또 Mutable은 가변이기 때문에 add, remove와 같은 메소드를 이용하여 수정할 수 있습니다.

각 이름?에 대해서 간단하게 설명하면 list배열과 비슷하다 생각하시면 됩니다. set집합으로 생각하시면 됩니다. 그렇기 때문에 인덱스, 순서가 없습니다. map특정 이름에 값을 매칭하는 것입니다. 학교에서 출석 부를 때 1번은 A, 2번은 B 하는 것과 같습니다.

댓글

이 블로그의 인기 게시물

파이썬을 이용한 image to pdf 변환 프로그램

젯슨 나노 - GPIO