Collection
📌 Immutable Collection
- Immutable Collection은 한 번 만들어지면 변경할 수 없다.
list
리스트 만들기
val numberList = listOf<Int>(1, 2, 3, 3)
리스트 값 접근하기
val a = numberList.get(0)
val a = numberList[0]
set
- 중복을 허용하지 않는다.(집합의 성질)
- 순서가 없다.
set 만들기
val numberSet = setOf<Int>(1, 2, 3, 3, 3)
set에 있는 모든 요소 접근하기(요소 순회)
numberList.forEach{
println(it)
}
map
- Key, Value 방식으로 관리한다.
- Key는 중복을 허용하지 않는다.
- 순서가 없다.
map 만들기
val numberMap = mapOf<String, Int>("one" to 1, "two" to 2)
map의 value에 접근하기
val a = numberMap.get("one")
val a = numberMap["one"]
📌 Mutable Collection
- Mutable Collection은 변경이 가능하다.
mutableList
mutableList 만들기
val mNumberList = mutableListOf<Int>(1, 2, 3)
mutableList에 값 추가하기
mNumberList.add(4)
mNumberList.add(3, 4)
mutableList에 있는 값 바꾸기
mNumberList.set(0, 100)
mNumberList[0] = 100
mutableList에 있는 값 삭제하기
mNumberList.remove(3)
mNumberList.removeAt(3)
mutableSet
mutableSet 만들기
val mNumberSet = mutableSetOf<Int>(1, 2, 3, 4, 4, 4)
mutableSet에 값 추가하기
mNumberSet.add(5)
mutableSet에 있는 값 삭제하기
- 없는 값을 삭제한다고 해서 에러가 발생하지는 않는다.
mNumberSet.remove(5)
mutableMap
mutableMap 만들기
val mNumberMap = mutableMapOf<String, Int>("one" to 1, "two" to 2)
mutableMap의 value 바꾸기
mNumberMap.replace("two", 3)
mNumberMap["two"] = 3
mutableMap에 key,value 쌍 추가하기
mNumberMap.put("three", 3)
mNumberMap["three"] = 3
key들을 모두 출력하기
println(mNumberMap.keys)
value들을 모두 출력하기
println(mNumberMap.values)
mutableMap에 있는 element 하나 삭제
mNumberMap.remove("one")
mNumberMap.remove("one", 1)
mutableMap에 있는 element들 모두 삭제
mNumberMap.clear()
println(mNumberMap)