Метод 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-core/Iterable/contains.html