Функция toUDoubleOrNull

Функция toUDoubleOrNull выполняет безопасное преобразование различных типов данных в беззнаковое число с плавающей точкой типа UDouble. Применяется к строкам, целым числам и числам с плавающей точкой. Возвращает null если преобразование невозможно.

Синтаксис

kotlinfun String.toUDoubleOrNull(): UDouble?
kotlinfun Int.toUDoubleOrNull(): UDouble?
kotlinfun Double.toUDoubleOrNull(): UDouble?
kotlinfun Float.toUDoubleOrNull(): UDouble?
kotlinfun Long.toUDoubleOrNull(): UDouble?

Пример

Преобразуем строку "123.45" в UDouble:

kotlinval str: String = "123.45"
val res: UDouble? = str.toUDoubleOrNull()
println(res)

Результат выполнения кода:

kotlinUDouble 123.45

Пример

Попытаемся преобразовать некорректную строку "abc" в UDouble:

kotlinval str: String = "abc"
val res: UDouble? = str.toUDoubleOrNull()
println(res)

Результат выполнения кода:

kotlinnull

Пример

Преобразуем целое число 100 типа Int в UDouble:

kotlinval num: Int = 100
val res: UDouble? = num.toUDoubleOrNull()
println(res)

Результат выполнения кода:

kotlinUDouble 100.0

Пример

Попытаемся преобразовать отрицательное число в UDouble:

kotlinval num: Int = -5
val res: UDouble? = num.toUDoubleOrNull()
println(res)

Результат выполнения кода:

kotlinnull

Пример

Использование функции с элвис-оператором для задания значения по умолчанию:

kotlinval input: String = "invalid"
val result: UDouble = input.toUDoubleOrNull() ?: 0.0.toUDouble()
println(result)

Результат выполнения кода:

kotlinUDouble 0.0

Пример

Безопасная обработка пользовательского ввода:

kotlinval userInput: String = "3.14"

val number = userInput.toUDoubleOrNull()

if (number != null) {
  println("Valid number: $number")
} else {
  println("Invalid input")
}

Результат выполнения кода:

kotlinString "Valid number: 3.14"

Смотрите также

  • функцию toUDouble,
    которая выбрасывает исключение при невозможности преобразования
  • функцию toUIntOrNull,
    которая безопасно преобразует в беззнаковое целое число
  • функцию toDoubleOrNull,
    которая безопасно преобразует в знаковое число с плавающей точкой
  • функцию toFloatOrNull,
    которая безопасно преобразует в число типа Float