Метод takeWhile
-
bool test(
- E элемент
унаследованный
Возвращает ленивое множество ведущих элементов, удовлетворяющих test.
Фильтрация происходит лениво. Каждый новый итератор возвращаемого множества начинает итерацию по элементам this.
Элементы могут быть вычислены путём перебора итератора, пока не будет найден элемент, для которого test(element) является ложью. В этот момент возвращаемое множество останавливается (его 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.18.5/dart-collection/ListQueue/takeWhile.html