코틀린에서 데이터를 효율적으로 저장하고 관리하기 위해 배열(Array)과 컬렉션(Collections)을 사용합니다.배열은 고정된 크기의 데이터 집합을 처리하는 데 유용하며, 컬렉션은 다양한 데이터 구조를 통해 동적인 데이터 관리를 가능하게 합니다.
배열 (Array)
코틀린에서 배열(Array) 은 동일한 타입의 요소들을 고정된 크기로 저장할 수 있는 데이터 구조입니다. 배열을 사용하는 방법은 다음과 같습니다:
배열 생성
arrayOf()
함수를 사용하여 배열을 생성할 수 있습니다.
val numbers = arrayOf(1, 2, 3, 4, 5)
배열의 요소에 접근
인덱스를 사용하여 배열의 요소에 접근할 수 있습니다.
println(numbers[0]) // 1
배열의 크기
배열의 크기는 size
속성을 통해 확인할 수 있습니다.
println(numbers.size) // 5
배열의 요소 변경
인덱스를 사용하여 배열의 요소를 수정할 수 있습니다.
numbers[0] = 10
println(numbers[0]) // 10
컬렉션 (Collections)
컬렉션(Collections) 은 데이터를 저장하는 여러 가지 구조를 제공합니다. 코틀린에서 주요 컬렉션은 리스트(List), 세트(Set), 맵(Map)입니다.
컬렉션은 가변(변경 가능)과 불변(변경 불가능)으로 나눌 수 있습니다.
리스트 (List)
불변 리스트
listOf()
함수를 사용하여 생성하며, 생성된 리스트의 요소는 변경할 수 없습니다.
val list = listOf("Apple", "Banana", "Cherry")
println(list[0]) // Apple
가변 리스트
mutableListOf()
함수를 사용하여 생성하며, 요소를 추가하거나 제거할 수 있습니다.
val mutableList = mutableListOf("Apple", "Banana")
mutableList.add("Cherry")
println(mutableList) // [Apple, Banana, Cherry]
세트 (Set)
불변 세트
setOf()
함수를 사용하여 생성하며, 중복된 요소를 허용하지 않습니다.
val set = setOf("Apple", "Banana", "Cherry", "Apple")
println(set) // [Apple, Banana, Cherry]
가변 세트
mutableSetOf()
함수를 사용하여 생성하며, 요소를 추가하거나 제거할 수 있습니다.
val mutableSet = mutableSetOf("Apple", "Banana")
mutableSet.add("Cherry")
println(mutableSet) // [Apple, Banana, Cherry]
맵 (Map)
불변 맵
mapOf()
함수를 사용하여 생성하며, 키와 값의 쌍으로 이루어진 데이터 집합입니다.
val map = mapOf("name" to "Alice", "age" to 25)
println(map["name"]) // Alice
가변 맵
mutableMapOf()
함수를 사용하여 생성하며, 요소를 추가하거나 수정할 수 있습니다.
val mutableMap = mutableMapOf("name" to "Alice", "age" to 25)
mutableMap["age"] = 26
println(mutableMap) // {name=Alice, age=26}
정리
- 배열: 고정 크기, 인덱스를 통한 접근.
- 리스트: 순서가 있는 데이터 집합. 가변 리스트는 요소 추가/제거 가능.
- 세트: 중복을 허용하지 않는 데이터 집합.
- 맵: 키와 값의 쌍으로 구성된 데이터 집합.