Kotlin - 컬렉션(리스트, 맵, 집합)
컬렉션은 개발에 유용한 자료구조를 말합니다. 안드로이드 개발에서도 리스트나 맵은 자주 사용되는 구조입니다.
리스트
리스트는 배열처럼 같은 자료형의 데이터들을 순서대로 가지고 있는 자료구조입니다. 중복된 아이템을 가질 수 있고 추가, 삭제, 교체 등이 쉽습니다.
요소를 변경할 수 없는 읽기 전용 리스트는 listOf() 메소드로 작성할 수 있습니다.
val foods:List<String> = listOf("라면","갈비","밥")
형 추론으로 자료형을 생략할 수 있습니다.
val foods=listOf("라면","갈비","밥")
요소를 변경하는 리스트를 작성할 때는 mutableListOf() 메소드를 사용하여 작성합니다.
자바와 다른 점은 특정 요소에 접근할 때 대괄호 안에 요소번호로 접근할 수 있다는 겁니다.
맵
맵은 키(key)와 값(value)의 쌍으로 이루어진 키가 중복될 수 없는 자료구조 입니다.
리스트와 마찬가지로 mapOf() 메소드로 읽기 전용 맵을 만들 수 있고, mutableMapOf() 메소드로 수정이 가능한 맵을 만들 수 있습니다. 맵의 요소에 접근할 때는 대괄호 안에 키(key)를 요소명으로 작성하여 접근합니다.
citiesMap["미국"]="워싱턴"
맵 전체의 키와 값을 탐색할 때는 다음과 같이 간단히 탐색할 수 있습니다.
// a->1; b->2; c->3
집합
집합(set)은 중복되지 않는 요소들로 구성된 자료구조 입니다. setOf()메소드로 읽기 전용 집합을, mutableSetOf() 메소드로 수정가능한 집합을 생성합니다.
println(citySet2.contains("서울")) //true
'Kotlin' 카테고리의 다른 글
Kotlin - 기타기능(확장함수,형변환,형체크) (0) | 2019.01.03 |
---|---|
Kotlin - 람다식, SAM변환 (1) | 2019.01.03 |
Kotlin - null값아님보증(!!), 안전한호출(?.), 엘비스 연산자(?:) (0) | 2019.01.03 |
Kotlin - null 가능성, lateinit ,lazy (0) | 2019.01.03 |
Kotlin - 인터페이스 (0) | 2019.01.03 |
댓글