A hash-table based implementation of Map.
The keys of a HashMap
must have consistent Object.operator==
and Object.hashCode implementations. This means that the ==
operator
must define a stable equivalence relation on the keys (reflexive,
symmetric, transitive, and consistent over time), and that hashCode
must be the same for objects that are considered equal by ==
.
The map allows null
as a key.
Iterating the map's keys, values or entries (through forEach) may happen in any order. The itearation order only changes when the map is modified. Values are iterated in the same order as their associated keys, so iterating the keys and values in parallel will give matching key and value pairs.
- Implements
-
- Map<K,V>
- Implemented by
Properties
- isEmpty → bool
-
read-only, inherited
Returns true if there is no key-value pair in the map.
- isNotEmpty → bool
-
read-only, inherited
Returns true if there is at least one key-value pair in the map.
- keys → Iterable<K>
-
read-only, inherited
The keys of
this
.… - length → int
-
read-only, inherited
The number of key-value pairs in the map.
- values → Iterable<V>
-
read-only, inherited
The values of
this
.…
Constructors
- HashMap({bool equals(K key1, K key2), int hashCode(K key), bool isValidKey(potentialKey)})
- HashMap.from(Map other)
-
Creates a HashMap that contains all key/value pairs of
other
. - HashMap.fromIterable(Iterable iterable, {K key(element), V value(element)})
-
Creates a HashMap where the keys and values are computed from the
iterable
.… - HashMap.fromIterables(Iterable<K> keys, Iterable<V> values)
- HashMap.identity()
-
Creates an unordered identity-based map.…
Operators
-
operator [](
Object key) → V -
inherited
Returns the value for the given
key
or null ifkey
is not in the map.… -
operator []=(
K key, V value) → void -
inherited
Associates the
key
with the givenvalue
.…
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(
Object value) → bool -
inherited
Returns true if this map contains the given
value
.… -
forEach(
void f(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.…