코틀린 집합형(setOf) 예제

 

setOf() 함수는 중복을 허용하지 않는 불변 Set 컬렉션을 생성하는 데 사용됩니다.

Set은 순서가 중요하지 않고, 각 요소는 한 번만 나타날 수 있습니다.

다음은 setOf() 함수를 사용하는 다양한 예제와 함께 Set의 주요 기능을 보여줍니다.

 

1. 기본적인 Set 생성

 

setOf() 함수에 원하는 요소들을 전달하여 Set을 생성합니다.

val numbers = setOf(1, 2, 3, 4, 5) // Int 타입의 Set
val names = setOf("John", "Jane", "Mike") // String 타입의 Set

println(numbers) // 출력: [1, 2, 3, 4, 5] (순서는 달라질 수 있음)
println(names) // 출력: [John, Jane, Mike] (순서는 달라질 수 있음)

 

2. 중복 요소 처리

 

Set은 중복을 허용하지 않으므로, 중복된 요소는 자동으로 제거됩니다.

val numbers = setOf(1, 2, 3, 2, 4, 5, 1)

println(numbers) // 출력: [1, 2, 3, 4, 5] (중복된 2와 1은 제거됨)

 

3. Set의 불변성

 

setOf() 함수로 생성된 Set은 불변 (immutable)입니다.

즉, Set을 생성한 후에는 요소를 추가, 삭제, 수정할 수 없습니다.

val numbers = setOf(1, 2, 3)

// numbers.add(4) // 오류: 불변 Set은 수정할 수 없습니다.
// numbers.remove(1) // 오류: 불변 Set은 수정할 수 없습니다.

 

4. 가변 Set (mutableSetOf())

 

요소를 추가, 삭제, 수정할 수 있는 Set이 필요한 경우 mutableSetOf() 함수를 사용합니다.

val mutableNumbers = mutableSetOf(1, 2, 3)

mutableNumbers.add(4)
mutableNumbers.remove(2)

println(mutableNumbers) // 출력: [1, 3, 4] (순서는 달라질 수 있음)

 

5. Set 연산

 

Set은 합집합, 교집합, 차집합과 같은 연산을 지원합니다.

val set1 = setOf(1, 2, 3, 4)
val set2 = setOf(3, 4, 5, 6)

println(set1.union(set2)) // 합집합: [1, 2, 3, 4, 5, 6]
println(set1.intersect(set2)) // 교집합: [3, 4]
println(set1.subtract(set2)) // 차집합: [1, 2]

 

6. Set 활용

 

Set은 특정 값이 Set에 포함되어 있는지 확인하거나, 중복을 제거해야 하는 경우 유용합니다.

val numbers = setOf(1, 2, 3, 4, 5)

println(numbers.contains(3)) // 출력: true
println(numbers.contains(6)) // 출력: false

val list = listOf(1, 2, 2, 3, 3, 3, 4, 4, 5)
val uniqueNumbers = list.toSet() // 중복 제거
println(uniqueNumbers) // 출력: [1, 2, 3, 4, 5]

 

 

더 자세한 내용은 다음 링크를 참조하세요.

 

🔎 https://www.baeldung.com/kotlin/sets: Google 검색

 

www.google.com

 

 

반응형

+ Recent posts