안드로이드 앱(Kotlin|Java)/[2025~] 안드로이드 앱
Part0_Ch01_07 컬렉션 ( list, map, set )
heylo
2025. 1. 24. 17:39
컬렉션은 mutable과 immutable 2가지 종류가 있고
기본적으로 immutable 임
함수가 많은 for문을 없애주어 생산성을 높여줄 것
1) list
fun main() {
// 1) list
// 자바에서는 리스트 값을 추가하거나 변경할 수 있음
// 코틀린에서는 값 추가/변경 가능한 리스트, 불가능한 리스트 2가지 종류가 있다.
// mutable, immutable
// 값 추가/변경 가능한 리스트, mutable list
val list1 = mutableListOf(1, 2, 3, 4, 5)
list1.add(6)
list1.addAll(listOf(7,8,9))
// 값 추가/변경이 불가능한 리스트, immutable list
val list2 = listOf(1, 2, 3, 4)
// 다양한 타입 가질 수 있음
val diverseList = listOf(1, 3.3, "안녕", true)
// 값 가져오기
list1.get(0)
list1[0]
// 객체를 참조하는 주소값을 출력
println(list1)
// 리스트 순회
println(list1.joinToString(separator=","))
// 강력한 확장함수들을 제공하여
// 반복문을 사용할 일이 많이 줄었음
list1.map{it * 10} // list1 의 모든 원소에 10을 곱해줘
2) map
fun main() {
// 2) map ( key 와 value )
val map1 = mapOf((1 to "안녕"), (2 to "잘가"))
val map2 = mutableMapOf((1 to "안녕"), (2 to "잘가"))
// 값 추가 ( index operator 사용 )
map2.put(3, "내일 봐")
map2[10] = "응"
}
3) set
// set 은 설명 없이 끝이 남
// 알아서 찾아보기