[kotlin] 코틀린 집합(Set)의 개념과 특징
코틀린에서 Set(집합)은 중복을 허용하지 않고, 순서가 없는 데이터의 모임을 나타냅니다. 이는 자바의 Set과 유사하며, 고유한 원소들의 컬렉션을 관리하는 데 사용됩니다.
코틀린 Set의 특징
-
중복된 원소를 허용하지 않음: Set은 동일한 원소를 여러 번 포함할 수 없습니다.
-
순서가 없음: Set은 원소를 저장하는 순서를 유지하지 않습니다. 따라서 인덱스를 통한 접근이 불가능하며, 원소들 간의 상대적 순서가 보장되지 않습니다.
-
수학 집합 연산을 지원: 합집합, 교집합, 차집합 등의 수학적 연산을 제공하여 Set 간의 연산을 편리하게 수행할 수 있습니다.
코틀린 Set 예제
fun main() {
val set1 = setOf(1, 2, 3, 4, 5) // 읽기 전용 Set
val set2 = mutableSetOf<Int>() // 가변적인 Set
set2.add(3)
set2.addAll(setOf(4, 5, 6))
println("set1: $set1") // 출력: set1: [1, 2, 3, 4, 5]
println("set2: $set2") // 출력: set2: [3, 4, 5, 6]
val unionSet = set1.union(set2) // 합집합
println("unionSet: $unionSet") // 출력: unionSet: [1, 2, 3, 4, 5, 6]
val intersectSet = set1.intersect(set2) // 교집합
println("intersectSet: $intersectSet") // 출력: intersectSet: [3, 4, 5]
}
위의 예제에서는 setOf
함수를 사용하여 읽기 전용 Set을 생성하고, mutableSetOf
함수를 사용하여 가변적인 Set을 생성하는 방법을 보여줍니다. 또한 union
및 intersect
함수를 통해 각각 합집합과 교집합을 구하는 방법을 보여줍니다.
Set은 컬렉션 프레임워크의 중요한 요소로, 고유한 원소들의 저장 및 관리에 활용됩니다.
더 많은 정보를 알고 싶다면, 코틀린 공식 문서를 참조해주세요.