contains 方法

bool contains(
  1. Object? element
)
override

判断集合中是否包含等于 element 的元素。

此操作将按顺序检查每个元素是否等于 element,除非它有更有效的方式来找到一个与 element 等价的元素。在找到第一个相等的元素时停止迭代。

用来确定 element 是否等于可迭代元素中任何一个元素的相等性默认为元素的 Object.==

某些可迭代的类型可能对其元素使用了不同的相等性。例如,一个 Set 可以有一个自定义的相等性(见 Set.identity),它的 contains 也使用了这种相等性。同样地,由 Map.keys 调用返回的 Iterable 应该使用与 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) {
  return _validKey(element) && _splay(element as E) == 0;
}