Map allows key to value mapping for arbitrary value types, and many key types.
This is a multi-type abstract, it is instantiated as one of its specialization types depending on its type parameters.
A Map can be instantiated without explicit type parameters. Type inference will then determine the type parameters from the usage.
Maps can also be created with [key1 => value1, key2 => value2]
syntax.
Map is an abstract type, it is not available at runtime.
See also:
Static methods
staticinlineset(this:IMap<K, V>, key:K, value:V):Void
Maps key
to value
.
If key
already has a mapping, the previous value disappears.
If key
is null
, the result is unspecified.
staticinlineget(this:IMap<K, V>, key:K):Null<V>
Returns the current mapping of key
.
If no such mapping exists, null
is returned.
Note that a check like map.get(key) == null
can hold for two reasons:
- the map has no mapping for
key
- the map has a mapping with a value of
null
If it is important to distinguish these cases, exists()
should be
used.
If key
is null
, the result is unspecified.
staticinlineexists(this:IMap<K, V>, key:K):Bool
Returns true if key
has a mapping, false otherwise.
If key
is null
, the result is unspecified.
staticinlineremove(this:IMap<K, V>, key:K):Bool
Removes the mapping of key
and returns true if such a mapping existed,
false otherwise.
If key
is null
, the result is unspecified.
staticinlinekeys(this:IMap<K, V>):Iterator<K>
Returns an Iterator over the keys of this
Map.
The order of keys is undefined.
staticinlineiterator(this:IMap<K, V>):Iterator<V>
Returns an Iterator over the values of this
Map.
The order of values is undefined.
staticinlinekeyValueIterator(this:IMap<K, V>):KeyValueIterator<K, V>
Returns an Iterator over the keys and values of this
Map.
The order of values is undefined.