Base class for implementing a Map.

This class has a basic implementation of all but five of the members of Map. A basic Map class can be implemented by extending this class and implementing keys, operator[], operator[]=, remove and clear. The remaining operations are implemented in terms of these five.

The keys iterable should have efficient length and contains operations, and it should catch concurrent modifications of the keys while iterating.

A more efficient implementation is usually possible by overriding some of the other members as well.

Mixes-in
Implemented by

Properties

isEmpty bool
read-only, inherited

isNotEmpty bool
read-only, inherited

keys Iterable<K>
read-only, inherited

length int
read-only, inherited

values Iterable<V>
read-only, inherited

Constructors

MapBase()
const

Operators

operator [](Object key) → V
inherited

Returns the value for the given key or null if key is not in the map.

operator []=(K key, V value) → dynamic
inherited

Associates the key with the given value.

Methods

addAll(Map<K,V> other) → void
inherited

Adds all key-value pairs of other to this map.

clear() → void
inherited

Removes all pairs from the map.

containsKey(Object key) → bool
inherited

Returns true if this map contains the given key.

containsValue(V value) → bool
inherited

Returns true if this map contains the given value.

forEach(void action(K key, V value)) → void
inherited

Applies f to each key-value pair of the map.

putIfAbsent(K key, V ifAbsent()) → V
inherited

Look up the value of key, or add a new value if it isn't there.

remove(Object key) → V
inherited

Removes key and its associated value, if present, from the map.

toString() → String
inherited

Returns a string representation of this object.