Represents a collection which maps keys to items,
where a key can map to at most one item. Each such
mapping may be represented by an Entry
.
A Map
is a Collection
of its Entry
s, and a
Correspondence
from keys to items.
The presence of an entry in a map may be tested using the
in
operator:
if ("lang"->"en_AU" in settings) { ... }
The entries of the map may be iterated using for
:
for (key->item in settings) { ... }
The item for a key may be obtained using the item operator:
String lang = settings["lang"] else "en_US";
Keys are compared for equality using Object.equals()
or
Comparable.compare()
. There may be at most one entry
per key.
no type hierarchy
Attributes | |
hash | Source Codeshared actual default Integer hash The hash value of the value, which allows the value to be an element of a hash-based set or key of a hash-based map. Implementations must respect the constraint that:
Therefore, a class which refines Refines Object.hash |
items | Source Codeshared default Collection<Item> items A |
keys | Source Codeshared actual default Collection<Key> keys A Refines Correspondence.keys |
Inherited Attributes |
Attributes inherited from: Object |
Attributes inherited from: Collection<Element> |
Attributes inherited from: Correspondence<Key,Item> |
Attributes inherited from: Iterable<Element,Absent> |
Methods | |
clone | Source Codeshared formal Map<Key,Item> clone() A shallow copy of this collection, that is, a collection with identical elements which does not change if this collection changes. If this collection is immutable, it is acceptable to return a reference to this collection. If this collection is mutable, a newly instantiated collection must be returned. Refines Collection.clone |
contains | Source Codeshared actual default Boolean contains(Object entry) See also defines() |
defines | Source Codeshared formal Boolean defines(Object key) Determines if there is an entry in this map with the
given See also contains() Refines Correspondence.defines |
equals | Source Codeshared actual default Boolean equals(Object that) Two maps are considered equal iff they have the same
entry sets. The entry set of a Refines Object.equals |
filterKeys | Source Codeshared default Map<Key,Item> filterKeys(Boolean filtering(Key key)) Produces a map by applying a |
get | Source Codeshared formal Item? get(Object key) Returns the item of the entry with the given Refines Correspondence.get |
mapItems | Source Codeshared default Map<Key,Result> mapItems<Result>(Result mapping(Key key, Item item)) Produces a map with the same |
patch | Source Codeshared default Map<Key|OtherKey,Item|OtherItem> patch<OtherKey, OtherItem>(Map<OtherKey,OtherItem> other) Produces a map whose keys are the union of the keys of this map, with the keys of the given map. For any given key in the resulting map, its associated item is the item associated with the key in the given map, if any, or the item associated with the key in this map otherwise. That is, for any map.patch(other)[key] == other[key] else map[key] This is a lazy operation producing a view of this map and the given map. |
Inherited Methods |
Methods inherited from: Category<Element> |
Methods inherited from: Collection<Element> |
Methods inherited from: Correspondence<Key,Item> |
Methods inherited from: Iterable<Element,Absent> Iterable.any() , Iterable.by() , Iterable.chain() , Iterable.collect() , Iterable.count() , Iterable.defaultNullElements() , Iterable.every() , Iterable.filter() , Iterable.find() , Iterable.findLast() , Iterable.flatMap() , Iterable.fold() , Iterable.follow() , Iterable.getFromFirst() , Iterable.interpose() , Iterable.iterator() , Iterable.longerThan() , Iterable.map() , Iterable.max() , Iterable.partition() , Iterable.product() , Iterable.reduce() , Iterable.repeat() , Iterable.scan() , Iterable.select() , Iterable.sequence() , Iterable.shorterThan() , Iterable.skip() , Iterable.skipWhile() , Iterable.sort() , Iterable.spread() , Iterable.take() , Iterable.takeWhile() |