Метод skipWhile
-
bool test(
- E element
Возвращает Iterable, который пропускает начальные элементы, пока test выполняется.
Фильтрация происходит лениво. Каждый новый итератор возвращаемого итерируемого объекта проходит по всем элементам this.
Возвращаемый итерируемый объект предоставляет элементы, перебирая этот итерируемый объект, но пропускает все начальные элементы, для которых test(element) возвращает значение test. Если все элементы удовлетворяют test(element), то результирующий итерируемый объект пустой, иначе он итерирует оставшиеся элементы в их исходном порядке, начиная с первого элемента, для которого test(element) возвращает false.
Пример:
final numbers = <int>[1, 2, 3, 5, 6, 7]; var result = numbers.skipWhile((x) => x < 5); // (5, 6, 7) result = numbers.skipWhile((x) => x != 3); // (3, 5, 6, 7) result = numbers.skipWhile((x) => x != 4); // () result = numbers.skipWhile((x) => x.isOdd); // (2, 3, 5, 6, 7)
Реализация
Iterable<E> skipWhile(bool test(E element)) {
return SkipWhileIterable<E>(this, 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/ListMixin/skipWhile.html