Функция emptySequence

Функция emptySequence создает и возвращает пустую последовательность элементов указанного типа. Последовательность не содержит элементов и при итерации не производит никаких значений. Полезно для инициализации переменных или возврата по умолчанию в функциях.

Импорт

kotlinimport kotlin.sequences.emptySequence

Синтаксис

kotlinfun <T> emptySequence(): Sequence<T>

Пример

Создадим пустую последовательность строк:

kotlinval emptySeq: Sequence<String> = emptySequence()
println(emptySeq.count())

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

kotlinInt 0

Пример

Попробуем преобразовать пустую последовательность в список и проверим его размер:

kotlinval seq: Sequence<Int> = emptySequence()
val list: List<Int> = seq.toList()
println(list.size)

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

kotlinInt 0

Пример

Использование пустой последовательности в качестве значения по умолчанию:

kotlinfun getNumbers(filter: String): Sequence<Int> {
  if (filter.isEmpty()) {
    return emptySequence()
  }
  return sequenceOf(1, 2, 3, 4, 5)
}

val result = getNumbers("")
println(result.any())

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

kotlinBoolean false

Пример

Проверка работы операторов над пустой последовательностью:

kotlinval empty: Sequence<Double> = emptySequence()
val mapped = empty.map { it * 2 }
val filtered = empty.filter { it > 10 }

println("Mapped count: " + mapped.count())
println("Filtered count: " + filtered.count())

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

kotlinMapped count: 0
Filtered count: 0

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

  • функцию sequenceOf,
    которая создает последовательность из переданных элементов
  • функцию generateSequence,
    которая создает последовательность с помощью генератора
  • функцию emptyList,
    которая создает пустой список
  • функцию emptySet,
    которая создает пустое множество