Функция 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,
которая возвращает альтернативное значение если строка пустая или содержит только пробелы