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

Метод toList

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

Синтаксис

Stream<T>.toList()

Пример

Давайте создадим поток из списка чисел и соберём все его события в список:

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

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

[1, 2, 3, 4, 5]

Пример

Давайте соберём события потока строк в список с помощью await:

void main() async { Stream<String> stream = Stream.fromIterable(['a', 'b', 'c', 'd', 'e']); List<String> res = await stream.toList(); print(res); }

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

[a, b, c, d, e]

Пример

Давайте применим toList к потоку, созданному через StreamController, и добавим события вручную:

void main() async { StreamController<int> controller = StreamController<int>(); controller.add(1); controller.add(2); controller.add(3); controller.close(); List<int> res = await controller.stream.toList(); print(res); }

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

[1, 2, 3]

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

  • класс Stream,
    который представляет поток событий
  • метод toSet,
    который собирает события потока в множество
  • метод forEach,
    который выполняет действие для каждого события
  • свойство length,
    которое возвращает количество событий потока
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить