РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
509 of 723 menu

Метод take

Метод take класса Stream создает новый поток, который передает только первые n элементов исходного потока. После этого новый поток завершается. В первый параметр мы передаем количество элементов, которое нужно взять из исходного потока. Если исходный поток содержит меньше элементов, чем указано в параметре, то новый поток просто завершится после передачи всех имеющихся элементов.

Синтаксис

Stream<T> take(int count)

Пример

Давайте создадим поток из списка чисел и возьмем из него только первые три элемента:

void main() { Stream<int> stream = Stream.fromIterable([1, 2, 3, 4, 5]); Stream<int> res = stream.take(3); res.listen((value) { print(value); }); }

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

1 2 3

Пример

Давайте попробуем взять больше элементов, чем есть в исходном потоке:

void main() { Stream<String> stream = Stream.fromIterable(['a', 'b', 'c']); Stream<String> res = stream.take(5); res.listen((value) { print(value); }); }

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

"a" "b" "c"

Пример

Давайте применим метод take к потоку, созданному с помощью Stream.periodic, и возьмем только первые два значения:

void main() { Stream<int> stream = Stream.periodic( Duration(seconds: 1), (int count) => count ); Stream<int> res = stream.take(2); res.listen((value) { print(value); }); }

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

0 1

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

  • класс Stream,
    который представляет поток данных
  • метод skip,
    который пропускает первые элементы потока
  • метод listen,
    который подписывается на поток
  • метод toList,
    который собирает элементы потока в список
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить