java.lang.Object | +--java.util.Map | +--java.util.SortedMapAll Implemented Interfaces:
java.util.Comparator | comparator() Returns the comparator used in sorting this map, or null if it is the keys' natural ordering. |
java.lang.Object | firstKey() Returns the first (lowest sorted) key in the map. |
java.util.SortedMap | headMap(java.lang.Object toKey) Returns a view of the portion of the map strictly less than toKey. |
java.lang.Object | lastKey() Returns the last (highest sorted) key in the map. |
java.util.SortedMap | subMap(java.lang.Object fromKey, java.lang.Object toKey) Returns a view of the portion of the map greater than or equal to fromKey, and strictly less than toKey. |
java.util.SortedMap | tailMap(java.lang.Object fromKey) Returns a view of the portion of the map greater than or equal to fromKey. |
public Comparator comparator()
public Object firstKey()
public SortedMap headMap(java.lang.Object toKey)
The returned map throws an IllegalArgumentException any time a key is
used which is out of the range of toKey. Note that the endpoint is not
included; if you want the endpoint, pass the successor object in to
toKey. For example, for Strings, you can request
headMap(limit + "\0")
.
toKey
- the exclusive upper range of the submapClassCastException
- if toKey is not comparable to the map contentsIllegalArgumentException
- if this is a subMap, and toKey is out
of rangeNullPointerException
- if toKey is null but the map does not allow
null keyspublic Object lastKey()
public SortedMap subMap(java.lang.Object fromKey, java.lang.Object toKey)
The returned map throws an IllegalArgumentException any time a key is
used which is out of the range of fromKey and toKey. Note that the
lower endpoint is included, but the upper is not; if you want to
change the inclusion or exclusion of an endpoint, pass the successor
object in instead. For example, for Strings, you can request
subMap(lowlimit + "\0", highlimit + "\0")
to reverse
the inclusiveness of both endpoints.
fromKey
- the inclusive lower range of the submaptoKey
- the exclusive upper range of the submapClassCastException
- if fromKey or toKey is not comparable to
the map contentsIllegalArgumentException
- if this is a subMap, and fromKey or
toKey is out of rangeNullPointerException
- if fromKey or toKey is null but the map
does not allow null keyspublic SortedMap tailMap(java.lang.Object fromKey)
The returned map throws an IllegalArgumentException any time a key is
used which is out of the range of fromKey. Note that the endpoint is
included; if you do not want the endpoint, pass the successor object in
to fromKey. For example, for Strings, you can request
tailMap(limit + "\0")
.
fromKey
- the inclusive lower range of the submapClassCastException
- if fromKey is not comparable to the map
contentsIllegalArgumentException
- if this is a subMap, and fromKey is out
of rangeNullPointerException
- if fromKey is null but the map does not allow
null keys
All keys entered in the map must be mutually comparable; in other words,
k1.compareTo(k2)
orcomparator.compare(k1, k2)
must not throw a ClassCastException. The ordering must be consistent with equals (see Comparator for this definition), if the map is to obey the general contract of the Map interface. If not, the results are well-defined, but probably not what you wanted.It is recommended that all implementing classes provide four constructors: 1) one that takes no arguments and builds an empty map sorted by natural order of the keys; 2) one that takes a Comparator for the sorting order; 3) one that takes a Map and sorts according to the natural order of its keys; and 4) one that takes a SortedMap and sorts by the same comparator. Unfortunately, the Java language does not provide a way to enforce this.