일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 플러터
- 함수
- crawler
- 클래스
- Flutter
- set
- 웹크롤러
- Collection
- Class
- function
- text
- 다트
- ML
- pushnamed
- List
- package
- 크롤러
- kotlin
- variable
- textstyle
- 코틀린
- Yocto
- animation
- import
- DART
- 파이썬
- 콜렉션
- python
- map
- Android
- Today
- Total
조용한 담장
코틀린(Kotlin) Collections : Write Operations 본문
코틀린의 collection 의 Write Operations 에 대해 살펴보자.
원문 https://kotlinlang.org/docs/reference/collection-write.html 을 보며 정리.
Mutable collections 의 내용을 변경하는 동작을 살펴보자.
Adding elements
add() 를 사용한다.
val numbers = mutableListOf(1, 2, 3, 4)
numbers.add(5)
println(numbers)
// output:
// [1, 2, 3, 4, 5]
addAll()는 argument collection 의 모든 element 를 추가한다.
argument 로는 Set, List 외에도 Iterable, Sequence, Array 가 올 수 있다.
추가되는 위치를 지정할 수 있다.
val numbers = mutableListOf(1, 2, 5, 6)
numbers.addAll(arrayOf(7, 8))
println(numbers)
numbers.addAll(2, setOf(3, 4))
println(numbers)
// output:
// [1, 2, 5, 6, 7, 8]
// [1, 2, 3, 4, 5, 6, 7, 8]
plusAssign += 을 사용할 수 있다.
val numbers = mutableListOf("one", "two")
numbers += "three"
println(numbers)
numbers += listOf("four", "five")
println(numbers)
// output:
// [one, two, three]
// [one, two, three, four, five]
Removing elements
remove() 를 사용하여 element 를 제거한다.
val numbers = mutableListOf(1, 2, 3, 4, 3)
numbers.remove(3) // removes the first `3`
println(numbers)
numbers.remove(5) // removes nothing
println(numbers)
// output:
// [1, 2, 4, 3]
// [1, 2, 4, 3]
한번에 여러개의 element 를 삭제할 때 사용하는 함수들:
-
removeAll() argument collection 에 있는 element 를 모두 삭제한다. predicate 를 사용하여 조건에 해당하는 경우만 삭제할 수도 있다.
-
retainAll() 는 removeAll() 와 반대로 argument 의 조건에 해당하는 것들을 제외하고 삭제한다.
-
clear() element 모두 삭제한 후 비어있는 상태로 남긴다.
val numbers = mutableListOf(1, 2, 3, 4)
println(numbers)
numbers.retainAll { it >= 3 }
println(numbers)
numbers.clear()
println(numbers)
val numbersSet = mutableSetOf("one", "two", "three", "four")
numbersSet.removeAll(setOf("one", "two"))
println(numbersSet)
// output:
// [1, 2, 3, 4]
// [3, 4]
// []
// [three, four]
minusAssign -= 를 사용할 수 있다.
연산의 오른쪽에는 element type 의 인스턴스 나 collection 이 올 수 있다.
element 가 오른쪽에 온 경우에는 처음 발견되는 element 를 삭제한다.
collection 이 오른쪽에 온 경우에는 발견되는 모든 element 를 삭제한다.
오른쪽에 온 collection 의 element 가 왼쪽 collection 에 없는 경우에는 동작에 아무 영향을 주지 않는다.
val numbers = mutableListOf("one", "two", "three", "three", "four")
numbers -= "three"
println(numbers)
numbers -= listOf("four", "five")
//numbers -= listOf("four") // does the same as above
println(numbers)
// output:
// [one, two, three, four]
// [one, two, three]
'kotlin' 카테고리의 다른 글
코틀린(Kotlin) Collections : Set Specific Operations (0) | 2020.05.07 |
---|---|
코틀린(Kotlin) Collections : List Specific Operations (0) | 2020.05.07 |
코틀린(Kotlin) Collections : Aggregate Operations (0) | 2020.04.08 |
코틀린(Kotlin) Collections : Ordering (0) | 2020.04.07 |
코틀린(Kotlin) Collections : Retrieving Single Elements (0) | 2020.04.06 |