코틀린은 강력한 컬렉션 프레임워크를 제공하여 데이터를 저장하고 처리하는 데 유용한 기능을 제공합니다. 이번 포스트에서는 코틀린 스크립트에서 컬렉션을 사용하는 방법에 대해 알아보겠습니다.
1. List
List는 순서가 있는 항목을 저장하는 데 사용되는 컬렉션입니다. 아래의 예제는 코틀린 스크립트에서 List를 선언하고 사용하는 방법을 보여줍니다:
val numbers = listOf(1, 2, 3, 4, 5)
println(numbers) // 출력: [1, 2, 3, 4, 5]
val firstNumber = numbers.first()
println(firstNumber) // 출력: 1
val lastNumber = numbers.last()
println(lastNumber) // 출력: 5
List는 변경 불가능한(immutable) 컬렉션이기 때문에 요소를 추가하거나 제거할 수 없습니다. 하지만 plus
연산자를 사용하여 다른 List와 결합할 수 있습니다.
2. Mutable List
Mutable List는 List와 달리 요소를 추가하거나 제거할 수 있는 변경 가능한 컬렉션입니다. 아래의 예제는 코틀린 스크립트에서 Mutable List를 선언하고 사용하는 방법을 보여줍니다:
val fruits = mutableListOf("apple", "banana", "orange")
println(fruits) // 출력: [apple, banana, orange]
fruits.add("grape")
println(fruits) // 출력: [apple, banana, orange, grape]
fruits.remove("banana")
println(fruits) // 출력: [apple, orange]
Mutable List는 요소를 추가하거나 제거할 수 있으므로 데이터의 동적인 변경이 필요한 경우 유용합니다.
3. Set
Set은 중복되지 않는 값을 저장하는 데 사용되는 컬렉션입니다. 아래의 예제는 코틀린 스크립트에서 Set을 선언하고 사용하는 방법을 보여줍니다:
val colors = setOf("red", "blue", "green")
println(colors) // 출력: [red, blue, green]
val containsRed = colors.contains("red")
println(containsRed) // 출력: true
Set은 순서가 없기 때문에 요소에 접근할 때 인덱스를 사용할 수 없습니다. 또한 Set은 변경 불가능한 컬렉션이며, 요소를 추가하거나 제거할 수 없습니다.
4. Mutable Set
Mutable Set은 Set과 비슷하지만 요소를 추가하거나 제거할 수 있는 변경 가능한 컬렉션입니다. 아래의 예제는 코틀린 스크립트에서 Mutable Set을 선언하고 사용하는 방법을 보여줍니다:
val cities = mutableSetOf("Seoul", "Tokyo", "London")
println(cities) // 출력: [Seoul, Tokyo, London]
cities.add("New York")
println(cities) // 출력: [Seoul, Tokyo, London, New York]
cities.remove("Tokyo")
println(cities) // 출력: [Seoul, London]
Mutable Set은 요소를 추가하거나 제거할 수 있으므로 유연한 데이터 변경이 필요한 경우 유용합니다.
5. Map
Map은 키-값 쌍으로 데이터를 저장하는 데 사용되는 컬렉션입니다. 아래의 예제는 코틀린 스크립트에서 Map을 선언하고 사용하는 방법을 보여줍니다:
val studentScores = mapOf("Alice" to 95, "Bob" to 80, "Charlie" to 70)
println(studentScores) // 출력: {Alice=95, Bob=80, Charlie=70}
val aliceScore = studentScores["Alice"]
println(aliceScore) // 출력: 95
Map은 특정 키를 사용하여 값에 접근할 수 있습니다. 변경 불가능한 컬렉션인 Map은 요소를 추가하거나 제거할 수 없습니다.
6. Mutable Map
Mutable Map은 Map과 마찬가지로 키-값 쌍을 저장하지만 변경 가능한 컬렉션입니다. 아래의 예제는 코틀린 스크립트에서 Mutable Map을 선언하고 사용하는 방법을 보여줍니다:
val countryCodes = mutableMapOf("US" to "United States", "KR" to "South Korea", "JP" to "Japan")
println(countryCodes) // 출력: {US=United States, KR=South Korea, JP=Japan}
countryCodes["UK"] = "United Kingdom"
println(countryCodes) // 출력: {US=United States, KR=South Korea, JP=Japan, UK=United Kingdom}
countryCodes.remove("US")
println(countryCodes) // 출력: {KR=South Korea, JP=Japan, UK=United Kingdom}
Mutable Map은 요소를 추가하거나 제거할 수 있으므로 데이터의 동적인 변경이 필요한 경우 유용합니다.
이제 코틀린 스크립트에서 컬렉션을 선언하고 사용하는 방법을 알아보았습니다. 적절한 컬렉션을 선택하여 데이터를 효율적으로 처리할 수 있게 됐습니다. 추가적인 내용은 공식 코틀린 문서를 참고해 보시기 바랍니다.