containsKey method

  1. @override
bool containsKey(
  1. Object? key
)
override

Whether this map contains the given key.

Returns true if any of the keys in the map are equal to key according to the equality used by the map.

final moonCount = <String, int>{'Mercury': 0, 'Venus': 0, 'Earth': 1,
  'Mars': 2, 'Jupiter': 79, 'Saturn': 82, 'Uranus': 27, 'Neptune': 14};
final containsUranus = moonCount.containsKey('Uranus'); // true
final containsPluto = moonCount.containsKey('Pluto'); // false

Implementation

@override
bool containsKey(Object? key) {
  if (key == null || key is! K) return false;
  var k = _EntryKey<K, V>(key);
  // ignore: collection_methods_unrelated_type
  var e = _map[k];
  if (e == null) return false;

  var target = e.target;
  if (target == null) {
    _map.remove(e);
    _onRemoveEntry(e);
    ++_unpurgedCount;
    return false;
  }

  return true;
}