метод where
-
bool test(
- E element
унаследовано
Возвращает новый ленивый Iterable со всеми элементами, удовлетворяющими предикату test.
Соответствующие элементы в возвращаемом итерируемом объекте расположены в том же порядке, что и в 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)) => super.where(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/where.html