java.lang.Object | ||
↳ | java.util.AbstractMap<K, V> | |
↳ | java.util.TreeMap<K, V> |
A map whose entries are sorted by their keys. All optional operations such as
put(K, V)
and remove(Object)
are supported.
This map sorts keys using either a user-supplied comparator or the key's natural order:
comparator()
.
Comparable
and compareTo()
must be able to compare each key with any other key in
this map. In this case comparator()
will return null.
a
and b
, a.equals(b)
if and only
if compare(a, b) == 0
.
When the ordering is not consistent with equals the behavior of this
class is well defined but does not honor the contract specified by Map
. Consider a tree map of case-insensitive strings, an ordering that is
not consistent with equals:
TreeMap map = new TreeMap(String.CASE_INSENSITIVE_ORDER);
map.put("a", "android");
// The Map API specifies that the next line should print "null" because
// "a".equals("A") is false and there is no mapping for upper case "A".
// But the case insensitive ordering says compare("a", "A") == 0. TreeMap
// uses only comparators/comparable on keys and so this prints "android".
System.out.println(map.get("A"));
Public Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Create a natural order, empty tree map whose keys must be mutually
comparable and non-null.
| |||||||||||
Create a natural order tree map populated with the key/value pairs of
copyFrom . | |||||||||||
Create a tree map ordered by
comparator . | |||||||||||
Create a tree map with the ordering and key/value pairs of
copyFrom . |
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Returns an entry related with the smallest key greater than or equal to
the specified key, or null if no such key.
| |||||||||||
Returns the smallest key greater than or equal to the specified key, or
null if no such key.
| |||||||||||
Removes all elements from this
Map , leaving it empty.
This implementation calls | |||||||||||
Creates and returns a copy of this
Object . | |||||||||||
Returns the comparator used to compare keys in this sorted map.
| |||||||||||
Returns whether this
Map contains the specified key.
This implementation iterates its key set, looking for a key that
| |||||||||||
Returns a NavigableSet view of the keys in descending order.
| |||||||||||
Returns a reverse order view of the map.
| |||||||||||
Returns a
Set containing all of the mappings in this Map . | |||||||||||
Returns the entry with the smallest key, or null if the map is empty.
| |||||||||||
Returns the first key in this sorted map.
| |||||||||||
Returns an entry related with the biggest key less than or equal to the
specified key, or null if no such key.
| |||||||||||
Returns the biggest key less than or equal to the specified key, or null
if no such key.
| |||||||||||
Returns the value of the mapping with the specified key.
This implementation iterates its entry set, looking for an entry with
a key that | |||||||||||
Returns a view of the head of the map whose keys are smaller than (or
equal to, depends on inclusive argument) endKey.
| |||||||||||
Returns a sorted map over a range of this sorted map with all keys that
are less than the specified
endKey . | |||||||||||
Returns an entry related with the smallest key greater than the specified
key, or null if no such key.
| |||||||||||
Returns the smallest key greater than the specified key, or null if no
such key.
| |||||||||||
Returns whether this map is empty.
This implementation compares | |||||||||||
Returns a set of the keys contained in this
Map .
This implementation returns a view that calls through this to map. | |||||||||||
Returns the entry with the biggest key, or null if the map is empty.
| |||||||||||
Returns the last key in this sorted map.
| |||||||||||
Returns an entry related with the biggest key less than the specified
key, or null if no such key.
| |||||||||||
Returns the biggest key less than the specified key, or null if no such
key.
| |||||||||||
Returns a NavigableSet view of the keys in ascending order.
| |||||||||||
Deletes and returns the entry with the smallest key, or null if the map
is empty.
| |||||||||||
Deletes and returns the entry with the biggest key, or null if the map is
empty.
| |||||||||||
Maps the specified key to the specified value.
This base implementation throws | |||||||||||
Removes a mapping with the specified key from this
Map .
This implementation iterates its entry set, removing the entry with
a key that | |||||||||||
Returns the number of mappings in this
Map .
This implementation returns its entry set's size. | |||||||||||
Returns a sorted map over a range of this sorted map with all keys
greater than or equal to the specified
startKey and less than the
specified endKey . | |||||||||||
Returns a view of part of the map whose keys is from startKey to endKey.
| |||||||||||
Returns a view of the tail of the map whose keys are bigger than (or
equal to, depends on inclusive argument) startKey.
| |||||||||||
Returns a sorted map over a range of this sorted map with all keys that
are greater than or equal to the specified
startKey . |
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class java.util.AbstractMap
| |||||||||||
From class java.lang.Object
| |||||||||||
From interface java.util.Map
| |||||||||||
From interface java.util.NavigableMap | |||||||||||
From interface java.util.SortedMap
|
Create a natural order, empty tree map whose keys must be mutually comparable and non-null.
Create a natural order tree map populated with the key/value pairs of
copyFrom
. This map's keys must be mutually comparable and
non-null.
Even if copyFrom
is a SortedMap
, the constructed map
will not use copyFrom
's ordering. This
constructor always creates a naturally-ordered map. Because the TreeMap
constructor overloads are ambiguous, prefer to construct a map
and populate it in two steps:
TreeMap customOrderedMap
= new TreeMap(copyFrom.comparator());
customOrderedMap.putAll(copyFrom);
Create a tree map ordered by comparator
. This map's keys may only
be null if comparator
permits.
comparator | the comparator to order elements with, or null to use the natural
ordering.
|
---|
Create a tree map with the ordering and key/value pairs of copyFrom
. This map's keys may only be null if the copyFrom
's
ordering permits.
The constructed map will always use copyFrom
's ordering. Because the TreeMap
constructor overloads
are ambigous, prefer to construct a map and populate it in two steps:
TreeMap customOrderedMap
= new TreeMap(copyFrom.comparator());
customOrderedMap.putAll(copyFrom);
Returns an entry related with the smallest key greater than or equal to the specified key, or null if no such key.
key | the key |
---|
Returns the smallest key greater than or equal to the specified key, or null if no such key.
key | the key |
---|
Removes all elements from this Map
, leaving it empty.
This implementation calls entrySet().clear()
.
Creates and returns a copy of this Object
. The default
implementation returns a so-called "shallow" copy: It creates a new
instance of the same class and then copies the field values (including
object references) from this instance to the new instance. A "deep" copy,
in contrast, would also recursively clone nested objects. A subclass that
needs to implement this kind of cloning should call super.clone()
to create the new instance and then create deep copies of the nested,
mutable objects.
Returns the comparator used to compare keys in this sorted map.
null
if the natural order is used.
Returns whether this Map
contains the specified key.
This implementation iterates its key set, looking for a key that
key
equals.
key | the key to search for. |
---|
true
if this map contains the specified key,
false
otherwise.
Returns a NavigableSet view of the keys in descending order.
Returns a reverse order view of the map.
Returns a Set
containing all of the mappings in this Map
. Each mapping is
an instance of Map.Entry
. As the Set
is backed by this Map
,
changes in one will be reflected in the other.
Returns the entry with the smallest key, or null if the map is empty.
Returns the first key in this sorted map.
Returns an entry related with the biggest key less than or equal to the specified key, or null if no such key.
key | the key |
---|
Returns the biggest key less than or equal to the specified key, or null if no such key.
key | the key |
---|
Returns the value of the mapping with the specified key.
This implementation iterates its entry set, looking for an entry with
a key that key
equals.
key | the key. |
---|
null
if no mapping for the specified key is found.
Returns a view of the head of the map whose keys are smaller than (or equal to, depends on inclusive argument) endKey.
to | the end key |
---|---|
inclusive | true if the end key is in the returned map |
Returns a sorted map over a range of this sorted map with all keys that
are less than the specified endKey
. Changes to the returned
sorted map are reflected in this sorted map and vice versa.
Note: The returned map will not allow an insertion of a key outside the specified range.
toExclusive | the high boundary of the range specified. |
---|
endKey
.Returns an entry related with the smallest key greater than the specified key, or null if no such key.
key | the key |
---|
Returns the smallest key greater than the specified key, or null if no such key.
key | the key |
---|
Returns whether this map is empty.
This implementation compares size()
to 0.
true
if this map has no elements, false
otherwise.Returns a set of the keys contained in this Map
. The Set
is backed by
this Map
so changes to one are reflected by the other. The Set
does not
support adding.
This implementation returns a view that calls through this to map. Its iterator transforms this map's entry set iterator to return keys.
Returns the entry with the biggest key, or null if the map is empty.
Returns the last key in this sorted map.
Returns an entry related with the biggest key less than the specified key, or null if no such key.
key | the key |
---|
Returns the biggest key less than the specified key, or null if no such key.
key | the key |
---|
Returns a NavigableSet view of the keys in ascending order.
Deletes and returns the entry with the smallest key, or null if the map is empty.
Deletes and returns the entry with the biggest key, or null if the map is empty.
Maps the specified key to the specified value.
This base implementation throws UnsupportedOperationException
.
key | the key. |
---|---|
value | the value. |
null
if there was no mapping.Removes a mapping with the specified key from this Map
.
This implementation iterates its entry set, removing the entry with
a key that key
equals.
key | the key of the mapping to remove. |
---|
null
if no mapping
for the specified key was found.Returns the number of mappings in this Map
.
This implementation returns its entry set's size.
Map
.
Returns a sorted map over a range of this sorted map with all keys
greater than or equal to the specified startKey
and less than the
specified endKey
. Changes to the returned sorted map are
reflected in this sorted map and vice versa.
Note: The returned map will not allow an insertion of a key outside the specified range.
fromInclusive | the low boundary of the range (inclusive). |
---|---|
toExclusive | the high boundary of the range (exclusive), |
Returns a view of part of the map whose keys is from startKey to endKey.
from | the start key |
---|---|
fromInclusive | true if the start key is in the returned map |
to | the end key |
toInclusive | true if the end key is in the returned map |
Returns a view of the tail of the map whose keys are bigger than (or equal to, depends on inclusive argument) startKey.
from | the start key |
---|---|
inclusive | true if the start key is in the returned map |
Returns a sorted map over a range of this sorted map with all keys that
are greater than or equal to the specified startKey
. Changes to
the returned sorted map are reflected in this sorted map and vice versa.
Note: The returned map will not allow an insertion of a key outside the specified range.
fromInclusive | the low boundary of the range specified. |
---|
startKey
.