contains 方法

bool contains(
  1. Object? element
)
继承

确定集合是否包含与 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) {
  int length = this.length;
  for (int i = 0; i < length; i++) {
    if (elementAt(i) == element) return true;
    if (length != this.length) {
      throw ConcurrentModificationError(this);
    }
  }
  return false;
}