removeWhere method

  1. @override
void removeWhere(
  1. bool test(
    1. K key,
    2. V value
    )
)
override

Removes all entries of this map that satisfy the given test.

final terrestrial = <int, String>{1: 'Mercury', 2: 'Venus', 3: 'Earth'};
terrestrial.removeWhere((key, value) => value.startsWith('E'));
print(terrestrial); // {1: Mercury, 2: Venus}

Implementation

@override
void removeWhere(bool Function(K key, V value) test) {
  var keysToRemove = <K>[];
  _entries.forEach((key, entry) {
    if (test(key, entry.value)) keysToRemove.add(key);
  });
  keysToRemove.forEach(remove);
}