dart:core
Map<K, V> class
A collection of key/value pairs, from which you retrieve a value using its associated key.
There is a finite number of keys in the map, and each key has exactly one value associated with it.
Maps, and their keys and values, can be iterated. The order of iteration is defined by the individual type of map. Examples:
- The plain HashMap is unordered (no order is guaranteed),
- the LinkedHashMap iterates in key insertion order,
- and a sorted map like SplayTreeMap iterates the keys in sorted order.
It is generally not allowed to modify the map (add or remove keys) while an operation is being performed on the map, for example in functions called during a forEach or putIfAbsent call. Modifying the map while iterating the keys or values may also break the iteration.
It is generally not allowed to modify the equality of keys (and thus not their hashcode) while they are in the map. Some specialized subtypes may be more permissive, in which case they should document this behavior.
- Implementers
Constructors
- Map()
factory
- Creates a Map instance with the default implementation, LinkedHashMap. [...]
- Map.from(Map other)
factory
- Creates a LinkedHashMap instance that contains all key/value pairs of
other
. [...] - Map.fromEntries(Iterable<MapEntry<K, V>> entries)
factory
- Creates a new map and adds all entries. [...]
- Map.fromIterable(Iterable iterable, { K key(dynamic element), V value(dynamic element) })
factory
- Creates a Map instance in which the keys and values are computed from the
iterable
. [...] - Map.fromIterables(Iterable<K> keys, Iterable<V> values)
factory
- Creates a Map instance associating the given
keys
to values
. [...] - Map.identity()
factory
- Creates an identity map with the default implementation, LinkedHashMap. [...]
- Map.of(Map<K, V> other)
factory
- Creates a LinkedHashMap with the same keys and values as
other
. [...] - Map.unmodifiable(Map other)
factory
- Creates an unmodifiable hash based map containing the entries of
other
. [...]
Properties
- entries → Iterable<MapEntry<K, V>>
read-only
- The map entries of this.
- isEmpty → bool
read-only
- Returns true if there is no key/value pair in the map.
- isNotEmpty → bool
read-only
- Returns true if there is at least one key/value pair in the map.
- keys → Iterable<K>
read-only
- The keys of this. [...]
- length → int
read-only
- The number of key/value pairs in the map.
- values → Iterable<V>
read-only
- The values of this. [...]
- hashCode → int
read-only, inherited
- The hash code for this object. [...]
- runtimeType → Type
read-only, inherited
- A representation of the runtime type of the object.
Methods
- addAll(Map<K, V> other) → void
- Adds all key/value pairs of
other
to this map. [...] - addEntries(Iterable<MapEntry<K, V>> newEntries) → void
- Adds all key/value pairs of
newEntries
to this map. [...] - cast<RK, RV>() → Map<RK, RV>
- Provides a view of this map as having
RK
keys and RV
instances, if necessary. [...] - clear() → void
- Removes all pairs from the map. [...]
- containsKey(Object key) → bool
- Returns true if this map contains the given
key
. [...] - containsValue(Object value) → bool
- Returns true if this map contains the given
value
. [...] - forEach(void f(K key, V value)) → void
- Applies
f
to each key/value pair of the map. [...] - map<K2, V2>(MapEntry<K2, V2> f(K key, V value)) → Map<K2, V2>
- Returns a new map where all entries of this map are transformed by the given
f
function. - putIfAbsent(K key, V ifAbsent()) → V
- Look up the value of
key
, or add a new value if it isn't there. [...] - remove(Object key) → V
- Removes
key
and its associated value, if present, from the map. [...] - removeWhere(bool predicate(K key, V value)) → void
- Removes all entries of this map that satisfy the given
predicate
. - update(K key, V update(V value), { V ifAbsent() }) → V
- Updates the value for the provided
key
. [...] - updateAll(V update(K key, V value)) → void
- Updates all values. [...]
- noSuchMethod(Invocation invocation) → dynamic
inherited
- Invoked when a non-existent method or property is accessed. [...]
- toString() → String
inherited
- Returns a string representation of this object.
Operators
- operator [](Object key) → V
- Returns the value for the given
key
or null if key
is not in the map. [...] - operator []=(K key, V value) → void
- Associates the
key
with the given value
. [...] - operator ==(dynamic other) → bool
inherited
- The equality operator. [...]
Static Methods
- castFrom<K, V, K2, V2>(Map<K, V> source) → Map<K2, V2>
- Adapts
source
to be a Map<K2, V2>
. [...]