728x90
Collections (콜렉션)
- Kotlin은 표준 라이브러리는 집합, 목록 및 지도와 같은 기본 컬렉션 유형에 대한 구현을 제공
- 기본적으로 Mutable(가변)과 Immutable(불변)을 별개로 지원
- Koltlin의 상속구조는 위에 이미지처럼 되어있으며 List, Set, Map과 같은 자료형을 제공함
List
- 순서가 있는 데이터 집합이며 중복을 허용
- 데이터를 삭제, 삽입을 해도 순서를 지키는 컬렉션임
Set
- 순서를 유지하지 않는 데이터 집합이며, 중복되는 데이터가 없음
- null객체를 가질 수 있음
Map
- Key, Value 방식의 데이터 집합
- 순서를 유지하지 않으며, Key는 중복이 불가함
List / Set / Map 생성함수 요약
불변객체 생성 | 가변객체 생성 | |
List | listOf() | mutableListOf() arrayListOf() |
Set | setOf() | mutableSetOf() hashSetOf() linkedSetOf() |
Map | mapOf() | mutableMapOf() hashMapOf() linkedMapOf() |
- 기본 생성 함수는 불변으로 생성이 됨
컬렉션 함수
- Kotlin은 함수형 언어의 특징을 가지고 있기 때문에 좀 더 편리하게 컬렉션함수를 통하여 컬렉션을 사용할 수 있음
- for문 없이 조건을 걸고 구조의 변경이 가능한 여러가지 함수를 제공함
컬렉션 함수 종류 및 예시
fun main() {
var names = arrayListOf("김태균", "전채성")
//forEach로 반복문 대체 출력
names.forEach { println(it) }
//filter 해당리스트 조건처리
println(names.filter { it.startsWith("김") })
//map을 통하여 새롭게 데이터를 변경
println(names.map { "이름 : " + it })
//any로 김태균이 하나라도 존재하는지 확인
println(names.any { it == "김태균"})
//all을 통하여 names에 이름이 전부 3자리인지 검증
println(names.all { it.length == 3 })
var fruit = setOf("사과", "딸기", "사과망고", "바나나")
//first로 사과가 포함된 첫번째 값을 출력
println(fruit.first { it.startsWith("사과") })
//last로 사과가 포함된 마지막 값을 출력
println(fruit.last { it.startsWith("사과") })
}
- 컬렉션 함수는 람다함수를 사용하여 컬렉션을 좀더 편하게 조작할 수 있게 해줌
- 경우에 따라 반복문과 조건문 대신 사용하면 좋음
'KOTLIN' 카테고리의 다른 글
[KOTLIN] 확장함수 (0) | 2022.05.22 |
---|---|
[KOTLIN] Scope 함수 (0) | 2022.05.18 |
[KOTLIN] OPEN 키워드 (0) | 2022.05.10 |
[KOTLIN] DATA CLASS (0) | 2022.05.07 |
[KOTLIN] OBJECT 키워드 (0) | 2022.05.07 |