Функция orEmpty
Функция orEmpty
является функцией-расширением для типа String?
и преобразует nullable строку в не-null строку типа String
.
Если исходная строка не равна null
, функция возвращает её значение.
Если исходная строка равна null
, функция возвращает пустую строку.
Синтаксис
fun String?.orEmpty(): String
Пример
Преобразуем nullable строку со значением в не-null строку:
val nullableString: String? = "Hello"
val res: String = nullableString.orEmpty()
println(res)
Результат выполнения кода:
String "Hello"
Пример
Преобразуем nullable строку со значением null
в не-null строку:
val nullableString: String? = null
val res: String = nullableString.orEmpty()
println(res)
Результат выполнения кода:
String ""
Пример
Использование функции для безопасной работы со строками:
val userInput: String? = getUserInput()
val processedInput = userInput.orEmpty().trim().lowercase()
println(processedInput)
Результат выполнения кода при userInput = null
:
String ""
Пример
Сравнение с оператором элвиса:
val nullableString: String? = null
// Использование orEmpty
val result1 = nullableString.orEmpty()
// Эквивалент с оператором элвиса
val result2 = nullableString ?: ""
println(result1 == result2)
Результат выполнения кода:
Boolean true
Смотрите также
-
функцию
isEmpty
,
которая проверяет строку на пустоту -
функцию
isBlank
,
которая проверяет строку на пустоту или наличие только пробельных символов -
функцию
ifEmpty
,
которая возвращает альтернативное значение если строка пустая -
функцию
ifBlank
,
которая возвращает альтернативное значение если строка пустая или содержит только пробелы