метод where
-
bool test(
- E element
Возвращает новый ленивый Iterable, содержащий все элементы, удовлетворяющие предикату test.
Совпадающие элементы в возвращённом iterable располагаются в том же порядке, что и в iterator.
Этот метод возвращает представление отображённых элементов. Пока возвращённый Iterable не перебирается, переданная функция test не вызывается. Перебор не кэширует результаты, поэтому при нескольких переборах возвращённого Iterable переданная функция test может вызываться несколько раз для одного и того же элемента.
Пример:
final numbers = <int>[1, 2, 3, 5, 6, 7]; var result = numbers.where((x) => x < 5); // (1, 2, 3) result = numbers.where((x) => x > 5); // (6, 7) result = numbers.where((x) => x.isEven); // (2, 6)
Реализация
Iterable<E> where(bool test(E element)) => WhereIterable<E>(this, 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-core/Iterable/where.html