Kotlin

[Kotlin] Set

hvoon 2022. 9. 14. 16:22

Set: 중복된 객체를 담을 수 없는 컬렉션. 순서에 관계 없고 중복된 객체를 담지 않을 경우 사용

Set 생성

- setOf : 불변형 set을 생성

- mutableSetOf : 가변형 set을 생성

    val set1 = setOf(1, 5, 10, 1, 5, 10)
    println("set1 : $set1")
    val set2 = mutableSetOf<Int>()
    println("set2 : $set2")
 
 
요소의 접근
    // println("set1 0 : ${set1.get(0)}")  // 순서 및 인덱스가 없으므로 에러
    // println("set1 1 : ${set1[1]}")  // 순서, 인덱스, 중복이 없으므로 에러
    // Set 의 접근은 반복실행문으로...
    for(item in set1){
        println("set1 : $item")
    }
 
 
사이즈를 얻어내는 메서드
    println("set1 size : ${set1.size}")
 
 
가변형의 요소 추가 제거
    set2.add(10);     set2.add(20);
    set2.addAll(listOf(30, 40, 50))
    println("set2 : $set2")
    set2.add(20) // 중복된 값의 추가는 무시
    println("set2 : $set2")
    set2.addAll(listOf(40, 50, 60, 70))
    println("set2 : $set2")
    set2.remove(30)
    println("set2 : $set2")
 

가변형 불변형간의 변환

     val set3 = set1.toMutableSet()
    set3.add(1000)
    println("set3 : $set3")
    val set4 = set3.toSet()