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

Свойство first

Свойство first класса Stream возвращает Future, который завершится первым элементом потока. Как только в поток поступит первый элемент, Future разрешится этим значением, а подписка на поток будет автоматически отменена. Если поток завершится без единого элемента, Future завершится ошибкой StateError. Если в потоке произойдет ошибка до поступления первого элемента, Future завершится этой ошибкой. Параметров у свойства нет.

Синтаксис

stream.first

Пример

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

void main() { Stream stream = Stream.fromIterable([1, 2, 3, 4, 5]); stream.first.then((value) { print(value); }); }

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

1

Пример

Давайте используем await, чтобы получить первый элемент потока строк:

void main() async { Stream stream = Stream.fromIterable(['abcde', '12345']); String res = await stream.first; print(res); }

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

"abcde"

Пример

Давайте обработаем ситуацию, когда поток пуст. В этом случае Future завершится ошибкой:

void main() { Stream stream = Stream.fromIterable([]); stream.first.then((value) { print(value); }).catchError((error) { print('Error: $error'); }); }

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

"Error: Bad state: No element"

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

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