Метод firstWhere
E firstWhere(Возвращает первый элемент, удовлетворяющий заданному предикату test.
Перебирает элементы и возвращает первый, удовлетворяющий test.
Если ни один элемент не удовлетворяет test, возвращается результат вызова функции orElse. Если orElse опущено, по умолчанию выбрасывается StateError.
Исходный код
E firstWhere(bool test(E element), {E orElse()}) {
int length = this.length;
for (int i = 0; i < length; i++) {
E element = this[i];
if (test(element)) return element;
if (length != this.length) {
throw new ConcurrentModificationError(this);
}
}
if (orElse != null) return orElse();
throw IterableElementError.noElement();
}
© 2012 the Dart project authors
Licensed under the Creative Commons Attribution-ShareAlike License v4.0.
https://api.dartlang.org/stable/1.24.3/dart-collection/ListMixin/firstWhere.html