skipWhile method
Возвращает Iterable, пропускающий начальные элементы, пока выполняется условие test.
Фильтрация выполняется лениво. Каждый новый Iterator возвращаемой последовательности перебирает все элементы this.
Возвращаемая последовательность предоставляет элементы, перебирая эту последовательность, но пропуская все начальные элементы, для которых test(element) возвращает true. Если все элементы удовлетворяют условию test, результирующая последовательность будет пустой; в противном случае она перебирает оставшиеся элементы в исходном порядке, начиная с первого элемента, для которого 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<String> skipWhile(bool test(String value)) =>
readClasses().skipWhile(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-svg/AttributeClassSet/skipWhile.html