A hash-table based implementation of Map.
The insertion order of keys is remembered, and keys are iterated in the order they were inserted into the map. Values are iterated in their corresponding key's order. Changing a key's value, when the key is already in the map, does not change the iteration order, but removing the key and adding it again will make it be last in the iteration order.
The keys of a LinkedHashMap
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.
- Implements
-
- HashMap<K, V>
Constructors
- LinkedHashMap({bool equals(K key1, K key2), int hashCode(K key), bool isValidKey(potentialKey) })
-
Creates an insertion-ordered hash-table based Map.
factory - LinkedHashMap.from(Map other)
-
Creates a LinkedHashMap that contains all key value pairs of
other
.factory - LinkedHashMap.fromIterable(Iterable iterable, { K key(element), V value(element) })
-
Creates a LinkedHashMap where the keys and values are computed from the
iterable
.factory - LinkedHashMap.fromIterables(Iterable<K> keys, Iterable<V> values)
-
Creates a LinkedHashMap associating the given
keys
tovalues
.factory - LinkedHashMap.identity()
-
Creates an insertion-ordered identity-based map.
factory
Properties
- hashCode → int
-
Get a hash code for this object.
read-only, inherited - isEmpty → bool
-
Returns true if there is no key-value pair in the map.
read-only, inherited - isNotEmpty → bool
-
Returns true if there is at least one key-value pair in the map.
read-only, inherited - keys → Iterable<K>
-
The keys of
this
.read-only, inherited - length → int
-
The number of key-value pairs in the map.
read-only, inherited - runtimeType → Type
-
A representation of the runtime type of the object.
read-only, inherited - values → Iterable<V>
-
The values of
this
.read-only, inherited
Operators
-
operator ==(
other) → bool -
The equality operator.
inherited -
operator [](
Object key) → V -
Returns the value for the given
key
or null ifkey
is not in the map.inherited -
operator []=(
K key, V value) → void -
Associates the
key
with the givenvalue
.inherited
Methods
-
addAll(
Map<K, V> other) → void -
Adds all key-value pairs of
other
to this map.inherited -
clear(
) → void -
Removes all pairs from the map.
inherited -
containsKey(
Object key) → bool -
Returns true if this map contains the given
key
.inherited -
containsValue(
Object value) → bool -
Returns true if this map contains the given
value
.inherited -
forEach(
void f(K key, V value)) → void -
Applies
f
to each key-value pair of the map.inherited -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a non-existent method or property is accessed.
inherited -
putIfAbsent(
K key, V ifAbsent()) → V -
Look up the value of
key
, or add a new value if it isn't there.inherited -
remove(
Object key) → V -
Removes
key
and its associated value, if present, from the map.inherited -
toString(
) → String -
Returns a string representation of this object.
inherited