K
- the type of map keys. The map is invariant on its key type, as it
can accept key as a parameter (of containsKey for example) and return it in keys set.V
- the type of map values. The map is covariant on its value type.public ImmutableSortedMap<K,V> extends ImmutableMap<K,V>
An interface that mimics the original SortedMap but without exposing modification functions to Kotlin source codes.
Modifications are strictly forbidden after the map is created.
Modifier and Type | Method and Description |
---|---|
java.util.Comparator<? super K> |
comparator()
Returns the comparator used to order the keys in this map, or
null if this map uses the natural ordering of its keys. |
K |
firstKey()
Returns the first (lowest) key currently in this map.
|
java.util.Set<java.util.Map.Entry> |
getEntries()
Returns a Set view of the mappings contained in this map.
The set's iterator returns the entries in ascending key order.
The set is backed by the map, so changes to the map are
reflected in the set, and vice-versa. If the map is modified
while an iteration over the set is in progress (except through
the iterator's own
remove operation, or through the
setValue operation on a map entry returned by the
iterator) the results of the iteration are undefined. The set
supports element removal, which removes the corresponding
mapping from the map, via the Iterator.remove ,
Set.remove , removeAll , retainAll and
clear operations. It does not support the
add or addAll operations. |
java.util.Set<K> |
getKeys()
Returns a Set view of the keys contained in this map.
The set's iterator returns the keys in ascending order.
The set is backed by the map, so changes to the map are
reflected in the set, and vice-versa. If the map is modified
while an iteration over the set is in progress (except through
the iterator's own
remove operation), the results of
the iteration are undefined. The set supports element removal,
which removes the corresponding mapping from the map, via the
Iterator.remove , Set.remove ,
removeAll , retainAll , and clear
operations. It does not support the add or addAll
operations. |
java.util.Collection<V> |
getValues()
Returns a Collection view of the values contained in this map.
The collection's iterator returns the values in ascending order
of the corresponding keys.
The collection is backed by the map, so changes to the map are
reflected in the collection, and vice-versa. If the map is
modified while an iteration over the collection is in progress
(except through the iterator's own
remove operation),
the results of the iteration are undefined. The collection
supports element removal, which removes the corresponding
mapping from the map, via the Iterator.remove ,
Collection.remove , removeAll ,
retainAll and clear operations. It does not
support the add or addAll operations. |
ImmutableSortedMap<K,V> |
head(K toKey)
Returns a view of the portion of this map whose keys are
strictly less than
toKey . The returned map is backed
by this map, so changes in the returned map are reflected in
this map, and vice-versa. The returned map supports all
optional map operations that this map supports. |
K |
lastKey()
Returns the last (highest) key currently in this map.
|
ImmutableSortedMap<K,V> |
sub(K fromKey,
K toKey)
Returns a view of the portion of this map whose keys range from
fromKey , inclusive, to toKey , exclusive. (If
fromKey and toKey are equal, the returned map
is empty.) The returned map is backed by this map, so changes
in the returned map are reflected in this map, and vice-versa.
The returned map supports all optional map operations that this
map supports. |
ImmutableSortedMap<K,V> |
tail(K fromKey)
Returns a view of the portion of this map whose keys are
greater than or equal to
fromKey . The returned map is
backed by this map, so changes in the returned map are
reflected in this map, and vice-versa. The returned map
supports all optional map operations that this map supports. |
java.util.Comparator<? super K> comparator()
Returns the comparator used to order the keys in this map, or
null
if this map uses the natural ordering of its keys.
null
if this map uses the natural ordering
of its keysImmutableSortedMap<K,V> sub(K fromKey, K toKey)
Returns a view of the portion of this map whose keys range from
fromKey
, inclusive, to toKey
, exclusive. (If
fromKey
and toKey
are equal, the returned map
is empty.) The returned map is backed by this map, so changes
in the returned map are reflected in this map, and vice-versa.
The returned map supports all optional map operations that this
map supports.
The returned map will throw an IllegalArgumentException
on an attempt to insert a key outside its range.
fromKey
- low endpoint (inclusive) of the keys in the returned maptoKey
- high endpoint (exclusive) of the keys in the returned mapfromKey
, inclusive, to toKey
, exclusivefromKey
and toKey
cannot be compared to one another using this map's comparator
(or, if the map has no comparator, using natural ordering).
Implementations may, but are not required to, throw this
exception if fromKey
or toKey
cannot be compared to keys currently in the map.fromKey
or toKey
is null and this map does not permit null keysfromKey
is greater than
toKey
; or if this map itself has a restricted
range, and fromKey
or toKey
lies
outside the bounds of the rangeImmutableSortedMap<K,V> head(K toKey)
Returns a view of the portion of this map whose keys are
strictly less than toKey
. The returned map is backed
by this map, so changes in the returned map are reflected in
this map, and vice-versa. The returned map supports all
optional map operations that this map supports.
The returned map will throw an IllegalArgumentException
on an attempt to insert a key outside its range.
toKey
- high endpoint (exclusive) of the keys in the returned maptoKey
toKey
is not compatible
with this map's comparator (or, if the map has no comparator,
if toKey
does not implement Comparable).
Implementations may, but are not required to, throw this
exception if toKey
cannot be compared to keys
currently in the map.toKey
is null and
this map does not permit null keystoKey
lies outside the
bounds of the rangeImmutableSortedMap<K,V> tail(K fromKey)
Returns a view of the portion of this map whose keys are
greater than or equal to fromKey
. The returned map is
backed by this map, so changes in the returned map are
reflected in this map, and vice-versa. The returned map
supports all optional map operations that this map supports.
The returned map will throw an IllegalArgumentException
on an attempt to insert a key outside its range.
fromKey
- low endpoint (inclusive) of the keys in the returned mapfromKey
fromKey
is not compatible
with this map's comparator (or, if the map has no comparator,
if fromKey
does not implement Comparable).
Implementations may, but are not required to, throw this
exception if fromKey
cannot be compared to keys
currently in the map.fromKey
is null and
this map does not permit null keysfromKey
lies outside the
bounds of the rangeK firstKey()
Returns the first (lowest) key currently in this map.
K lastKey()
Returns the last (highest) key currently in this map.
java.util.Set<K> getKeys()
Returns a Set view of the keys contained in this map.
The set's iterator returns the keys in ascending order.
The set is backed by the map, so changes to the map are
reflected in the set, and vice-versa. If the map is modified
while an iteration over the set is in progress (except through
the iterator's own remove
operation), the results of
the iteration are undefined. The set supports element removal,
which removes the corresponding mapping from the map, via the
Iterator.remove
, Set.remove
,
removeAll
, retainAll
, and clear
operations. It does not support the add
or addAll
operations.
java.util.Collection<V> getValues()
Returns a Collection view of the values contained in this map.
The collection's iterator returns the values in ascending order
of the corresponding keys.
The collection is backed by the map, so changes to the map are
reflected in the collection, and vice-versa. If the map is
modified while an iteration over the collection is in progress
(except through the iterator's own remove
operation),
the results of the iteration are undefined. The collection
supports element removal, which removes the corresponding
mapping from the map, via the Iterator.remove
,
Collection.remove
, removeAll
,
retainAll
and clear
operations. It does not
support the add
or addAll
operations.
java.util.Set<java.util.Map.Entry> getEntries()
Returns a Set view of the mappings contained in this map.
The set's iterator returns the entries in ascending key order.
The set is backed by the map, so changes to the map are
reflected in the set, and vice-versa. If the map is modified
while an iteration over the set is in progress (except through
the iterator's own remove
operation, or through the
setValue
operation on a map entry returned by the
iterator) the results of the iteration are undefined. The set
supports element removal, which removes the corresponding
mapping from the map, via the Iterator.remove
,
Set.remove
, removeAll
, retainAll
and
clear
operations. It does not support the
add
or addAll
operations.