Метод contains
- Object? element
Содержит ли коллекция элемент, равный element.
Эта операция будет проверять каждый элемент в порядке, чтобы убедиться, что он равен element, если только нет более эффективного способа найти элемент, равный element.
Равенство, используемое для определения, является ли element равным элементу итерируемого объекта, по умолчанию соответствует Object.== элемента.
Некоторые типы итерируемых объектов могут использовать другое равенство для своих элементов. Например, Set может иметь настраиваемое равенство (см. Set.identity), которое использует его contains. Аналогично, Iterable, возвращаемый вызовом Map.keys, должен использовать то же равенство, что и Map для ключей.
Пример:
final gasPlanets = <int, String>{1: 'Jupiter', 2: 'Saturn'};
final containsOne = gasPlanets.keys.contains(1); // true
final containsFive = gasPlanets.keys.contains(5); // false
final containsJupiter = gasPlanets.values.contains('Jupiter'); // true
final containsMercury = gasPlanets.values.contains('Mercury'); // false Реализация
bool contains(Object? element) {
for (E e in this) {
if (e == element) return true;
}
return false;
}
© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.18.5/dart-collection/IterableMixin/contains.html