코틀린에서 데이터를 효율적으로 저장하고 관리하기 위해 배열(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}

정리

  • 배열: 고정 크기, 인덱스를 통한 접근.
  • 리스트: 순서가 있는 데이터 집합. 가변 리스트는 요소 추가/제거 가능.
  • 세트: 중복을 허용하지 않는 데이터 집합.
  • : 키와 값의 쌍으로 구성된 데이터 집합.