Spec-Zone.ru › Dart 2

dart:collection

метод takeWhile

Iterable<E> takeWhile(
  1. bool test(
    1. E element
    )
)
унаследовано

Возвращает ленивый итерируемый объект, состоящий из начальных элементов, удовлетворяющих test.

Фильтрация выполняется лениво. Каждый новый итератор возвращаемого итерируемого объекта начинает перебор элементов this.

Элементы можно получить, переходя по iterator, пока не будет найден элемент, для которого test(element) равно false. В этот момент возвращаемый итерируемый объект останавливается (его moveNext() возвращает false).

Пример:

final numbers = <int>[1, 2, 3, 5, 6, 7];
var result = numbers.takeWhile((x) => x < 5); // (1, 2, 3)
result = numbers.takeWhile((x) => x != 3); // (1, 2)
result = numbers.takeWhile((x) => x != 4); // (1, 2, 3, 5, 6, 7)
result = numbers.takeWhile((x) => x.isOdd); // (1)

Реализация

Iterable<E> takeWhile(bool test(E element)) => super.takeWhile(test);

© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.19.6/dart-collection/ListQueue/takeWhile.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API