Kotlin 문법 정리 - List, Array

김원기·2026년 4월 24일

Kotlin TIL

목록 보기
3/6

배열과 리스트 (Array & List)

코틀린에서 데이터를 담는 대표적인 자료구조이다. 가장 큰 차이점은 크기 변경이 가능한가와 수정 가능한가에 있다.

Array (배열)

자바의 배열과 유사하다. 크기가 정해져 있으며, 한 번 생성하면 크기를 늘리거나 줄일 수 없다.

fun main() {
    // arrayOf를 사용하여 생성
    val array = arrayOf(1, 2, 3)
    
    // 인덱스로 접근 및 수정 가능
    array[0] = 10
    println(array[0]) // 10
    
    // array.size로 크기 확인 가능
}

List (리스트)

코틀린의 리스트는 크게 두 가지로 나뉜다. 기본적으로 listOf로 만드는 리스트는 수정이 불가능(Immutable)하다는 점이 중요하다.

Immutable List (수정 불가)
생성 시점에 정해진 데이터를 읽기만 할 수 있으며, 요소를 추가하거나 변경할 수 없다.

val list = listOf(1, 2, 3)
// list[0] = 10 // (X) 에러 발생: 수정 불가

Mutable List (수정 가능)
요소를 추가, 삭제, 수정할 수 있는 리스트이다. Java의 ArrayList와 비슷하다.

val mutableList = mutableListOf(1, 2, 3)

mutableList.add(4)      // 요소 추가
mutableList.removeAt(0) // 0번 인덱스 삭제
mutableList[0] = 10     // 요소 수정

요약하자면?

  • Array: 크기 고정, 내부 값 수정 가능.

  • List (listOf): 크기 고정, 내부 값 수정 불가.

  • MutableList (mutableListOf): 크기 가변, 내부 값 수정 가능.

Tip: 코틀린에서는 데이터의 일관성을 위해 가능하면 수정 불가능한 List를 먼저 사용하고, 데이터 변경이 꼭 필요한 경우에만 MutableList를 사용하는 것을 권장한다.

profile
혼자 공부하는 블로그라 부족함이 많아요 https://www.notion.so/18067a27ac7e4f4790dde645fb3bf3d3?pvs=4

0개의 댓글