본문 바로가기

코틀린/[Filtering] 필터 작업9

[Kotlin][Map] containsKey, containsValue 맵에 지정된 키가 포함되어 있으면 true 를 반환합니다. K 유형의 키를 전달해야 하는 containKey 의 유형 안전성 제한을 극복할 수 있습니다.val map: Map = mapOf("x" to 1, "y" to 2)print(map.containsKey("x")) // trueprint(map.containsKey("y")) // trueprint(map.containsKey("z")) // false 맵이 하나 이상의 키를 지정된 값에 매핑하는 경우 true 를 반환합니다. V 유형의 값을 전달해야 하는 containValue 의 유형 안전성 제한을 극복할 수 있습니다.val map: Map = mapOf("x" to 1, "y" to 2)// member containsValue is use.. 2024. 9. 10.
[Kotlin][Collection] removeFirst / removeLast / removeAt 이 변경 가능한 목록에서 첫 번째 요소를 제거하고 제거된 요소를 반환하거나, 이 목록이 비어 있으면 NoSuchElementException을 발생시킵니다.public fun MutableList.removeFirst(): T = if (isEmpty()) throw NoSuchElementException("List is empty.") else removeAt(0)val list = mutableListOf(1, 2, 3, 4)print(list.removeFirst()) // 1print(list) // [2, 3, 4] 이 변경 가능한 목록에서 마지막 요소를 제거하고 제거된 요소를 반환하거나, 이 목록이 비어 있으면 NoSuchElementException을 발생시킵니다.public fun M.. 2024. 9. 6.
[Kotlin][Collection] distinct 지정된 컬렉션의 고유한 요소만 포함하는 목록을 반환합니다. 주어진 컬렉션의 동일한 요소 중에서 첫 번째 요소만 결과 목록에 표시됩니다. 결과 목록의 요소는 소스 컬렉션의 순서와 동일합니다.public fun Iterable.distinct(): List { return this.toMutableSet().toList()}val list = listOf('a', 'A', 'b', 'B', 'A', 'a')println(list.distinct()) // [a, A, b, B]println(list.distinctBy { it.uppercaseChar() }) // [a, b] distinct - Kotlin Programming Language kotlinlang.org 2024. 9. 5.
[Kotlin][Number] coerceAtMost maximumValue 보다 작거나 같으면 이 값을 반환하고, 그렇지 않으면 maximumValue 를 반환합니다.public fun > T.coerceAtMost(maximumValue: T): T { return if (this > maximumValue) maximumValue else this}println(DayOfWeek.FRIDAY.coerceAtMost(DayOfWeek.SATURDAY)) // FRIDAYprintln(DayOfWeek.FRIDAY.coerceAtMost(DayOfWeek.WEDNESDAY)) // WEDNESDAYprintln(10.coerceAtMost(5)) // 5println(10.coerceAtMost(20)) // 10 coerceAtMost - Kotl.. 2024. 9. 2.
[Kotlin][Collection] dropWhile / dropLastWhile 주어진 조건을 만족하는 첫 번째 요소를 제외한 모든 요소를 ​​포함하는 목록을 반환합니다.public inline fun Iterable.dropWhile(predicate: (T) -> Boolean): List { var yielding = false val list = ArrayList() for (item in this) if (yielding) list.add(item) else if (!predicate(item)) { list.add(item) yielding = true } return list}val chars = ('a'..'z').toList()println(char.. 2024. 8. 28.
[Kotlin][Collection] takeWhile / takeLastWhile 주어진 조건자를 만족하는 첫 번째 요소를 포함하는 목록을 반환합니다.public inline fun Iterable.takeWhile(predicate: (T) -> Boolean): List { val list = ArrayList() for (item in this) { if (!predicate(item)) break list.add(item) } return list}val chars = ('a'..'z').toList()println(chars.takeWhile { it  주어진 조건자를 만족하는 마지막 요소를 포함하는 목록을 반환합니다.public inline fun List.takeLastWhile(predicate: (T.. 2024. 8. 28.
[Kotlin][Collection] partition 원래 배열을 목록 쌍으로 분할합니다. 여기서 첫 번째 목록에는 조건자가 true 를 생성한 요소가 포함되고, 두 번째 목록에는 조건자가 false 를 생성한 요소가 포함됩니다.public inline fun Iterable.partition(predicate: (T) -> Boolean): Pair, List> { val first = ArrayList() val second = ArrayList() for (element in this) { if (predicate(element)) { first.add(element) } else { second.add(element) } } return Pair.. 2024. 8. 21.