Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- ConstraintLayout
- LiveData
- CLASS
- function
- animation
- docker
- mongoose
- lifecycle
- Kotlin
- elementAt
- 생명주기
- union
- Filter
- collection
- docker-compose
- recyclerview
- class component
- enum
- Generic
- MINUS
- AWS
- react native
- list
- map
- Swift
- Interface
- vuex
- Service
- Foreign Key
- ReactNative
Archives
- Today
- Total
개발 일기
List Specific Operations 본문
List는 Kotlin에서 가장 유명한 타입입니다.
Index에 접근이 가능한 List는 다양한 강력한 기능들을 제공합니다.
Retrieving elements by index
Index에 대해서 검색하는 방법은 elementAt() , first() , lat() 혹은 Retrieving Single Elements.
만약에 몇 번 Index인지 알고 있는 경우에는 "[index]" or get() 함수를 통해서 찾을 수가 있습니다.
더 안전한 방법으로 가져오기 위에서는 "getOrElse()" or "getOrNull()" 함수를 통해 가져올 수가 있습니다.
getOrElse()
해당 Index를 가져올 때 해당 Index가 없을 경우에 기본 값을 제공할수가 있습니다.
getOrNull()
해당 Index를 가져올 때 해당 Index가 없을 경우에 Null을 반환 합니다.
val numbers = listOf(1, 2, 3, 4)
println(numbers.get(0))
println(numbers[0])
//numbers.get(5) // exception!
println(numbers.getOrNull(5)) // null
println(numbers.getOrElse(5, {it})) // 5
1
1
null
5
List에서 부분적으로 가져오고 싶을 때 subList() 함수를 제공합니다.
val numbers = (0..13).toList()
println(numbers.subList(3, 6))
Finding element positions
element 값으로 List에 해당 Index을 알고싶은 경우에는 indexOf() and lastIndexOf()을 사용할수가 있습니다.
값이 없을 경우에는 -1을 Return 합니다.
val numbers = listOf("1", "2", "3", "4", "5", "6")
println(numbers.indexOf("2"))
println(numbers.lastIndexOf("2"))
indexOfFirst() 첫번째로 매칭 된 element index을 반환합니다. 못 찾을 경우 -1을 반환 합니다.
indexOfLast() 마지막으로 매칭된 element index을 반환합니다. 못 찾을 경우 -1을 반환 합니다.
val numbers = mutableListOf(1, 2, 3, 4)
println(numbers.indexOfFirst { it > 2})
println(numbers.indexOfLast { it % 2 == 1})
List write operations
Adding
val numbers = mutableListOf("one", "five", "six")
numbers.add(1, "two")
numbers.addAll(2, listOf("three", "four"))
println(numbers)
Updating
val numbers = mutableListOf("one", "five", "three")
numbers[1] = "two"
println(numbers)
전체의 모든 값을 변경하고 싶은 경우에는 "fill()" 함수를 사용할수가 있습니다.
val numbers = mutableListOf(1, 2, 3, 4)
numbers.fill(3)
println(numbers)
Removing
val numbers = mutableListOf(1, 2, 3, 4, 3)
numbers.removeAt(1)
println(numbers)
Sorting
val numbers = mutableListOf("one", "two", "three", "four")
numbers.sort()
println("Sort into ascending: $numbers")
numbers.sortDescending()
println("Sort into descending: $numbers")
numbers.sortBy { it.length }
println("Sort into ascending by length: $numbers")
numbers.sortByDescending { it.last() }
println("Sort into descending by the last letter: $numbers")
numbers.sortWith(compareBy<String> { it.length }.thenBy { it })
println("Sort by Comparator: $numbers")
numbers.shuffle()
println("Shuffle: $numbers")
numbers.reverse()
println("Reverse: $numbers")
'컴퓨터 언어 > kotlin' 카테고리의 다른 글
Map Specific Operations (0) | 2020.06.11 |
---|---|
Set Specific Operations (0) | 2020.06.08 |
Collection Write Operations (0) | 2020.06.03 |
Collection Aggregate Operations (0) | 2020.06.02 |
Collection 순서 정렬 (0) | 2020.06.01 |
Comments