Spec-Zone.ru › Kotlin 1.8

digitToIntOrNull

kotlin-stdlib / kotlin.text / digitToIntOrNull
Требования к платформе и версии: JVM (1.5), JS (1.5), Native (1.5)
fun Char.digitToIntOrNull(): Int?

Возвращает числовое значение десятичной цифры, представленной этим символом Char, или null , если этот символ Char не является допустимой десятичной цифрой.

Символ Char считается представляющим десятичную цифру, если для него значение isDigit истинно. В этом случае возвращается значение Unicode десятичной цифры символа.

import java.util.*
import kotlin.test.*

fun main(args: Array<String>) {
//sampleStart
println('5'.digitToIntOrNull()) // 5
println('3'.digitToIntOrNull(radix = 8)) // 3
println('A'.digitToIntOrNull(radix = 16)) // 10
println('K'.digitToIntOrNull(radix = 36)) // 20

// radix argument should be in 2..36
// '0'.digitToIntOrNull(radix = 1) //  will fail
// '1'.digitToIntOrNull(radix = 100) //  will fail
// only 0 and 1 digits are valid for binary numbers
println('5'.digitToIntOrNull(radix = 2)) // null
// radix = 10 is used by default
println('A'.digitToIntOrNull()) // null
// symbol '+' is not a digit in any radix
println('+'.digitToIntOrNull()) // null
// Only Latin letters are valid for digits greater than 9.
println('β'.digitToIntOrNull(radix = 36)) // null
//sampleEnd
}
Требования к платформе и версии: JVM (1.5), JS (1.5), Native (1.5)
fun Char.digitToIntOrNull(radix: Int): Int?

Возвращает числовое значение цифры, которую представляет этот символ Char в указанном основании, или null , если этот символ Char не является допустимой цифрой в указанном основании. Бросает исключение, если основание не находится в диапазоне 2..36.

Символ Char считается представляющим цифру в указанном основании, если выполняется хотя бы одно из следующих условий:

  • isDigit имеет значение true для Char, и значение Unicode десятичной цифры символа меньше указанного основания. В этом случае возвращается значение десятичной цифры.
  • Символ Char — это одна из заглавных латинских букв от 'A' до 'Z', и его код меньше radix + 'A'.code - 10. В этом случае возвращается this.code - 'A'.code + 10.
  • Символ Char — это одна из строчных латинских букв от 'a' до 'z', и его код меньше radix + 'a'.code - 10. В этом случае возвращается this.code - 'a'.code + 10.
  • Символ Char — это одна из заглавных латинских букв полных ширины от '\uFF21' до '\uFF3A', и его код меньше radix + 0xFF21 - 10. В этом случае возвращается this.code - 0xFF21 + 10.
  • Символ Char — это одна из строчных латинских букв полных ширины от '\uFF41' до '\uFF5A', и его код меньше radix + 0xFF41 - 10. В этом случае возвращается this.code - 0xFF41 + 10.
import java.util.*
import kotlin.test.*

fun main(args: Array<String>) {
//sampleStart
println('5'.digitToIntOrNull()) // 5
println('3'.digitToIntOrNull(radix = 8)) // 3
println('A'.digitToIntOrNull(radix = 16)) // 10
println('K'.digitToIntOrNull(radix = 36)) // 20

// radix argument should be in 2..36
// '0'.digitToIntOrNull(radix = 1) //  will fail
// '1'.digitToIntOrNull(radix = 100) //  will fail
// only 0 and 1 digits are valid for binary numbers
println('5'.digitToIntOrNull(radix = 2)) // null
// radix = 10 is used by default
println('A'.digitToIntOrNull()) // null
// symbol '+' is not a digit in any radix
println('+'.digitToIntOrNull()) // null
// Only Latin letters are valid for digits greater than 9.
println('β'.digitToIntOrNull(radix = 36)) // null
//sampleEnd
}

© 2010–2023 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/digit-to-int-or-null.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API