НОВИНКА!
Занимательная математика от Трепачёва. Присоединяйтесь к нам!
510 of 1310 menu

Функция defaultIfEmpty

Функция defaultIfEmpty используется для обработки пустых коллекций в Kotlin. Если исходная коллекция пуста, функция возвращает список, содержащий одно указанное значение по умолчанию. Если коллекция не пуста, возвращается сама исходная коллекция.

Синтаксис

fun <T> Iterable<T>.defaultIfEmpty(defaultValue: T): List<T>

Параметры

defaultValue - значение, которое будет возвращено в виде одноэлементного списка, если исходная коллекция окажется пустой.

Пример

Применим функцию к непустой коллекции:

val numbers = listOf(1, 2, 3, 4, 5) val res = numbers.defaultIfEmpty(999) println(res)

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

List<Int> [1, 2, 3, 4, 5]

Пример

Применим функцию к пустой коллекции:

val emptyList = emptyList<Int>() val res = emptyList.defaultIfEmpty(999) println(res)

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

List<Int> [999]

Пример

Использование со строковыми коллекциями:

val names = listOf("John", "Jane", "Mike") val emptyNames = emptyList<String>() val res1 = names.defaultIfEmpty("Unknown") val res2 = emptyNames.defaultIfEmpty("Unknown") println(res1) println(res2)

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

List<String> ['John', 'Jane', 'Mike'] List<String> ['Unknown']

Пример

Использование в цепочке операций:

val numbers = listOf(10, 20, 30, 40, 50) val filteredNumbers = numbers.filter { it > 100 } val res = filteredNumbers .map { it * 2 } .defaultIfEmpty(0) println(res)

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

List<Int> [0]

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

  • функцию ifEmpty,
    которая выполняет действие для пустой коллекции
  • функцию isEmpty,
    которая проверяет коллекцию на пустоту
  • функцию orEmpty,
    которая возвращает пустую коллекцию для null значения
  • функцию firstOrNull,
    которая возвращает первый элемент или null
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить