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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
fun main() {
val list = listOf(1, 2, 3, 4, 5, 6)
val listPair = listOf(Pair("A" , 300), Pair("B", 200), Pair("C", 100), Pair("D", 200))
val listRepeated = listOf(2, 2, 3, 4, 5, 5, 6)
// elementAt: 인덱스에 해당하는 요소 반환
println("elementAt: " + list.elementAt(1))
// elementAtOrElse: 인덱스에 벗어나는 경우 식에 따라 결과 반환
println("elementAtOrElse: " + list.elementAtOrElse(10, { 2 * it }))
// elementAtOrElse(10) { 2 * it } 표현식과 동일
// elementAtOrNull: 인덱스를 벗어나는 경우 null 반환
println("elementAtOrNull: " + list.elementAtOrNull(10))
// first: 식에 일치하는 첫 요소 반환
println("first: " + listPair.first { it.second == 200 })
// last: 식에 일치하는 마지막 요소 반환
println("last: " + listPair.last { it.second == 200 })
// firstOrNull: 식에 일치하지 않는 경우 null 반환
println("firstOrNull: " + listPair.firstOrNull { it.first == "E" })
// lastOrNull: 식에 일치하지 않는 경우 null 반환
println("lastOrNull: " + listPair.lastOrNull { it.first == "E" })
// indexOf: 주어진 요소에 일치하는 첫 인덱스 반환
println("indexOf: " + list.indexOf(4))
// indexOfFirst: 람다식에 일치하는 첫 요소의 인덱스 반환, 없으면 -1
println("indexOfFirst: " + list.indexOfFirst { it % 2 == 0 })
// lastIndexOf: 주어진 요소에 일치하는 가장 마지막 인덱스 반환
println("lastIndexOf: " + listRepeated.lastIndexOf(5))
// indexOfLast: 람다식에 일치하는 마지막 요소의 인덱스 반환, 없으면 -1
println("indexOfLast: " + list.indexOfLast { it % 2 == 0 })
// single: 람다식에 일치하는 요소 하나 반환
println("single: " + listPair.single { it.second == 100 })
println("singleOrNull: " + listPair.singleOrNull { it.second == 500 })
// binarySearch: 요소에 대해 이진 탐색 후 인덱스 반환
println("binarySearch: " + list.binarySearch(3))
// find: 조건식을 만족하는 첫 번째 검색된 요소 반환, 없으면 null
println("find: " + list.find { it > 3 })
}
|
elementAt: 2 elementAtOrElse: 20 elementAtOrNull: null first: (B, 200) last: (D, 200) firstOrNull: null lastOrNull: null indexOf: 3 indexOfFirst: 1 lastIndexOf: 5 indexOfLast: 5 single: (C, 100) singleOrNull: null binarySearch: 2 find: 4 |
⚠️AdBlock이 감지되었습니다. 원할한 페이지 표시를 위해 AdBlock을 꺼주세요.⚠️