들어가기 전에
컬렉션이란 관련 있는 데이터를 모아 저장해 둔 자료구조입니다. 우리는 컬렉션을 통해 필요한 정보를 나열해 보여주거나 검색, 정렬 등을 처리할 수 있습니다.
핵심 키워드
- 컬렉션(collection)
- 리스트(list)
- 자료구조
학습하기
들어가기 전에
컬렉션이란 관련 있는 데이터를 모아 저장해 둔 자료구조입니다. 우리는 컬렉션을 통해 필요한 정보를 나열해 보여주거나 검색, 정렬 등을 처리할 수 있습니다.
핵심 키워드
학습하기
컬렉션(collection)이란 자주 사용되는 기초적인 자료구조를 모아놓은 일종의 프레임워크로 표준 라이브러리로 제공되고 있습니다.
컬렉션의 종류
코틀린의 컬렉션은 자바 컬렉션의 구조를 확장 구현한 것입니다. 컬렉션의 종류로는 List, Set, Map 등이 있으며 자바와는 다르게 불변형(immutable)과 가변형(mutable)으로 나뉘어 컬렉션을 다룰 수 있습니다. 가변형 컬렉션 타입은 객체에 데이터의 추가/변경이 가능하고, 불변형 컬렉션은 한번 할당하면 읽기 전용이 됩니다. 자바에서는 오로지 가변형 컬렉션만 취급되므로 자바와 상호작용하는 코드에서는 주의해야 합니다.
컬렉션 | 불변형(읽기 전용) | 가변형 |
List | listOf | mutableListOf, arrayListOf |
Set | setOf | mutableSetOf, hashSetOf, linkedSetOf, sortedSetOf |
Map | mapOf | mutableMapOf, hashMapOf, linkedMapOf, sortedMapOf |
변수를 선언할 때 불변형 val의 사용을 권장하듯이, 컬렉션도 되도록이면 읽기 전용인 불변형으로 선언할 것을 권장하고 있습니다.
리스트
List는 순서에 따라 정렬된 요소를 가지는 컬렉션으로, 가장 많이 사용되는 컬렉션 중에 하나입니다. 먼저 값을 변경할 수 없는 불변형 List를 만들기 위해 헬퍼 함수인 listOf()를 사용할 수 있습니다. 값을 변경할 수 있는 가변형을 표현하기 위해서는 mutableListOf()를 사용합니다. 인자는 원하는 만큼의 가변 인자를 가지도록 vararg로 선언할 수 있습니다.
fun main() {
// 불변형 List의 사용
var numbers: List<Int> = listOf(1, 2, 3, 4, 5)
var names: List<String> = listOf("one", "two", "three")
for (name in names) {
println(name)
}
for (num in numbers) print(num) // 한 줄에서 처리하기
println() // 내용일 없을 때는 한 줄 내리는 개행
}
http://www.yes24.com
comment