본문 바로가기

Kotlin147

[Kotlin][Comparator] compareBy 비교 결과를 계산하기 위해 일련의 함수를 사용하여 비교기를 만듭니다. 함수는 순차적으로 호출되고, 주어진 값 a 와 b 를 수신하고 Comparable 객체를 반환합니다. a 및 b 값에 ​​대해 함수에서 반환된 Comparable 인스턴스가 동일한 것으로 비교되지 않으면 해당 비교 결과가 Comparator 에서 반환됩니다.public fun compareBy(vararg selectors: (T) -> Comparable?): Comparator { require(selectors.size > 0) return Comparator { a, b -> compareValuesByImpl(a, b, selectors) }}private fun compareValuesByImpl(a: T, b.. 2024. 9. 5.
[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][String] toBigDecimal 문자열을 java.math.BigDecimal 숫자로 구문 분석하고 결과를 반환합니다.NumberFormatException - 문자열이 숫자의 유효한 표현이 아닌 경우.@SinceKotlin("1.2")public inline fun String.toBigDecimal(): java.math.BigDecimal = java.math.BigDecimal(this) // print("18446744073709551615".toInt()) // Exception NumberFormatExceptionprint("18446744073709551615".toBigDecimal()) // 18446744073709551615 toBigDecimal - Kotlin Programming Language .. 2024. 9. 4.
[Kotlin][Collection] groupBy 요소에 적용된 지정된 keySelector 함수에 의해 반환된 키로 원본 컬렉션의 각 요소에 적용된 valueTransform 함수에 의해 반환된 값을 그룹화하고 각 그룹 키가 해당 값 목록과 연결된 맵을 반환합니다. 반환된 맵은 원래 컬렉션에서 생성된 키의 항목 반복 순서를 유지합니다.public inline fun Iterable.groupBy(keySelector: (T) -> K): Map> { return groupByTo(LinkedHashMap>(), keySelector)}public inline fun >> Iterable.groupByTo(destination: M, keySelector: (T) -> K): M { for (element in this) { v.. 2024. 9. 4.
[Kotlin][Comparison Operation] compareTo 순서를 위해 이 개체를 지정된 개체와 비교합니다. 이 개체가 지정된 다른 개체와 같으면 0을 반환하고, 다른 개체보다 작으면 음수를, 다른 개체보다 크면 양수를 반환합니다.public interface Comparable { public operator fun compareTo(other: T): Int}val num1 = 123val num2 = 193print(num1.compareTo(num2)) // -1 compareTo - Kotlin Programming Language kotlinlang.org 2024. 9. 4.
[Kotlin][Char] code 이 Char의 코드를 반환합니다. Char의 코드는 생성된 값이며 이 Char에 해당하는 UTF-16 코드 단위입니다.public inline val Char.code: Int get() = this.toInt()val string = "0Azβ"println(string.map { it.code }) // [48, 65, 122, 946]val char = '1'val int = char.code - '0'.codeprintln(int) // 1 code - Kotlin Programming Language kotlinlang.org 2024. 9. 3.
[Kotlin][Char] digitToInt 이 Char가 나타내는 십진수의 숫자 값을 반환합니다. 이 Char가 유효한 십진수가 아닌 경우 예외가 발생합니다. Char에 대해 isDigit이 true인 경우 Char는 십진수를 나타내는 것으로 간주됩니다. 이 경우 해당 문자의 유니코드 십진수 값이 반환됩니다.public fun Char.digitToInt(): Int { return digitOf(this, 10).also { if (it  digitToInt - Kotlin Programming Language kotlinlang.org 2024. 9. 3.