Метод singleWhere
inherited
Возвращает единственный элемент, который удовлетворяет test.
Проверяет элементы, чтобы увидеть, возвращает ли test(element) значение true. Если ровно один элемент удовлетворяет test, возвращается этот элемент. Если найдено более одного соответствующего элемента, выбрасывается StateError. Если соответствующий элемент не найден, возвращается результат orElse. Если orElse опущено, по умолчанию выбрасывается StateError.
Пример:
final numbers = <int>[2, 2, 10]; var result = numbers.singleWhere((element) => element > 5); // 10
Если соответствующий элемент не найден, возвращается результат вызова orElse.
result = numbers.singleWhere((element) => element == 1,
orElse: () => -1); // -1
Не должно быть более одного соответствующего элемента.
result = numbers.singleWhere((element) => element == 2); // Throws Error.
Реализация
String singleWhere(bool test(String value), {String orElse()?}) =>
readClasses().singleWhere(test, orElse: orElse);
© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.18.5/dart-svg/AttributeClassSet/singleWhere.html