1. 코틀린 컬렉션의 이해
1.1 컬렉션이란?
- 코틀린의 컬렉션은 프로그램에서 여러 개의 데이터를 효율적으로 관리하고 처리하기 위한 자료구조입니다.
- 컬렉션은 동일한 타입(및 해당 타입의 하위 타입)의 객체들을 그룹으로 저장하고 처리할 수 있게 해줍니다.
노트
코틀린의 컬렉션은 Java나 Python 등 다른 언어의 컬렉션과 개념적으로 유사하지만, 불변(Immutable)과 가변(Mutable) 컬렉션을 명확히 구분한다는 특징이 있습니다.
1.2 코틀린 컬렉션의 주요 특징
- 코틀린의 컬렉션은 다음과 같은 주요 특징을 가집니다:
- 불변/가변 인터페이스 분리
- 타입 파라미터의 공변성(Covariance) 지원
- 풍부한 표준 라이브러리 함수 제공
- Null 안전성 보장
2. 컬렉션의 종류
2.1 List
- List는 순서가 있는 컬렉션으로, 동일한 요소의 중복을 허용합니다.
불변 List 사용 예시
val numbers = listOf("one", "two", "three", "four")
println("Number of elements: ${numbers.size}")
println("Third element: ${numbers[2]}")
println("Index of element \"two\": ${numbers.indexOf("two")}")
가변 List 사용 예시
val numbers = mutableListOf(1, 2, 3, 4)
numbers.add(5)
numbers.removeAt(1)
numbers[0] = 0
println(numbers)
팁
코틀린의 MutableList의 기본 구현체는 ArrayList입니다. ArrayList는 내부적으로 크기가 조절되는 배열을 사용하여 구현되어 있습니다.