@GwtIncompatible public abstract class ForwardingNavigableMap<K,V> extends ForwardingSortedMap<K,V> implements NavigableMap<K,V>
Warning: The methods of ForwardingNavigableMap forward indiscriminately
to the methods of the delegate. For example, overriding ForwardingMap.put(K, V) alone will not
change the behavior of ForwardingMap.putAll(java.util.Map<? extends K, ? extends V>), which can lead to unexpected behavior. In this case, you
should override putAll as well, either providing your own implementation, or delegating
to the provided standardPutAll method.
default method warning: This class does not forward calls to default methods. Instead, it inherits their default implementations. When those implementations
invoke methods, they invoke methods on the ForwardingNavigableMap.
Each of the standard methods uses the map's comparator (or the natural ordering of
the elements, if there is no comparator) to test element equality. As a result, if the comparator
is not consistent with equals, some of the standard implementations may violate the Map
contract.
The standard methods and the collection views they return are not guaranteed to be
thread-safe, even when all of the methods that they depend on are thread-safe.
| Modifier and Type | Class and Description |
|---|---|
protected class |
ForwardingNavigableMap.StandardDescendingMap
A sensible implementation of
NavigableMap.descendingMap() in terms of the methods of
this NavigableMap. |
protected class |
ForwardingNavigableMap.StandardNavigableKeySet
A sensible implementation of
NavigableMap.navigableKeySet() in terms of the methods of
this NavigableMap. |
ForwardingSortedMap.StandardKeySetForwardingMap.StandardEntrySet, ForwardingMap.StandardValues| Modifier | Constructor and Description |
|---|---|
protected |
ForwardingNavigableMap()
Constructor for use by subclasses.
|
| Modifier and Type | Method and Description |
|---|---|
Map.Entry<K,V> |
ceilingEntry(K key) |
K |
ceilingKey(K key) |
protected abstract NavigableMap<K,V> |
delegate()
Returns the backing delegate instance that methods are forwarded to.
|
NavigableSet<K> |
descendingKeySet() |
NavigableMap<K,V> |
descendingMap() |
Map.Entry<K,V> |
firstEntry() |
Map.Entry<K,V> |
floorEntry(K key) |
K |
floorKey(K key) |
NavigableMap<K,V> |
headMap(K toKey,
boolean inclusive) |
Map.Entry<K,V> |
higherEntry(K key) |
K |
higherKey(K key) |
Map.Entry<K,V> |
lastEntry() |
Map.Entry<K,V> |
lowerEntry(K key) |
K |
lowerKey(K key) |
NavigableSet<K> |
navigableKeySet() |
Map.Entry<K,V> |
pollFirstEntry() |
Map.Entry<K,V> |
pollLastEntry() |
protected Map.Entry<K,V> |
standardCeilingEntry(K key)
|
protected K |
standardCeilingKey(K key)
A sensible definition of
ceilingKey(K) in terms of ceilingEntry. |
protected NavigableSet<K> |
standardDescendingKeySet()
|
protected Map.Entry<K,V> |
standardFirstEntry()
|
protected K |
standardFirstKey()
A sensible definition of
ForwardingSortedMap.firstKey() in terms of firstEntry. |
protected Map.Entry<K,V> |
standardFloorEntry(K key)
|
protected K |
standardFloorKey(K key)
A sensible definition of
floorKey(K) in terms of floorEntry. |
protected SortedMap<K,V> |
standardHeadMap(K toKey)
A sensible definition of
ForwardingSortedMap.headMap(Object) in terms of
headMap(Object, boolean). |
protected Map.Entry<K,V> |
standardHigherEntry(K key)
|
protected K |
standardHigherKey(K key)
A sensible definition of
higherKey(K) in terms of higherEntry. |
protected Map.Entry<K,V> |
standardLastEntry()
A sensible definition of
lastEntry() in terms of the iterator() of the
ForwardingMap.entrySet() of descendingMap(). |
protected K |
standardLastKey()
A sensible definition of
ForwardingSortedMap.lastKey() in terms of lastEntry. |
protected Map.Entry<K,V> |
standardLowerEntry(K key)
|
protected K |
standardLowerKey(K key)
A sensible definition of
lowerKey(K) in terms of lowerEntry. |
protected Map.Entry<K,V> |
standardPollFirstEntry()
|
protected Map.Entry<K,V> |
standardPollLastEntry()
A sensible definition of
pollFirstEntry() in terms of the iterator of the
entrySet of descendingMap. |
protected SortedMap<K,V> |
standardSubMap(K fromKey,
K toKey)
A sensible definition of
ForwardingSortedMap.subMap(Object, Object) in terms of
subMap(Object, boolean, Object, boolean). |
protected SortedMap<K,V> |
standardTailMap(K fromKey)
A sensible definition of
ForwardingSortedMap.tailMap(Object) in terms of
tailMap(Object, boolean). |
NavigableMap<K,V> |
subMap(K fromKey,
boolean fromInclusive,
K toKey,
boolean toInclusive) |
NavigableMap<K,V> |
tailMap(K fromKey,
boolean inclusive) |
comparator, firstKey, headMap, lastKey, standardContainsKey, subMap, tailMapclear, containsKey, containsValue, entrySet, equals, get, hashCode, isEmpty, keySet, put, putAll, remove, size, standardClear, standardContainsValue, standardEquals, standardHashCode, standardIsEmpty, standardPutAll, standardRemove, standardToString, valuestoStringclone, finalize, getClass, notify, notifyAll, wait, wait, waitheadMap, subMap, tailMapcomparator, entrySet, firstKey, keySet, lastKey, valuesclear, compute, computeIfAbsent, computeIfPresent, containsKey, containsValue, equals, forEach, get, getOrDefault, hashCode, isEmpty, merge, put, putAll, putIfAbsent, remove, remove, replace, replace, replaceAll, sizeprotected ForwardingNavigableMap()
protected abstract NavigableMap<K,V> delegate()
ForwardingObjectForwardingSet.delegate(). Concrete subclasses override this method to supply
the instance being decorated.delegate in class ForwardingSortedMap<K,V>public Map.Entry<K,V> lowerEntry(K key)
lowerEntry in interface NavigableMap<K,V>protected Map.Entry<K,V> standardLowerEntry(K key)
lowerEntry(K) in terms of the lastEntry() of
headMap(Object, boolean). If you override headMap, you may wish to override
lowerEntry to forward to this implementation.protected K standardLowerKey(K key)
lowerKey(K) in terms of lowerEntry. If you override
lowerEntry(K), you may wish to override lowerKey to forward to this
implementation.public Map.Entry<K,V> floorEntry(K key)
floorEntry in interface NavigableMap<K,V>protected Map.Entry<K,V> standardFloorEntry(K key)
floorEntry(K) in terms of the lastEntry() of
headMap(Object, boolean). If you override headMap, you may wish to override
floorEntry to forward to this implementation.protected K standardFloorKey(K key)
floorKey(K) in terms of floorEntry. If you override
floorEntry, you may wish to override floorKey to forward to this
implementation.public Map.Entry<K,V> ceilingEntry(K key)
ceilingEntry in interface NavigableMap<K,V>protected Map.Entry<K,V> standardCeilingEntry(K key)
ceilingEntry(K) in terms of the firstEntry() of
tailMap(Object, boolean). If you override tailMap, you may wish to override
ceilingEntry to forward to this implementation.public K ceilingKey(K key)
ceilingKey in interface NavigableMap<K,V>protected K standardCeilingKey(K key)
ceilingKey(K) in terms of ceilingEntry. If you override
ceilingEntry, you may wish to override ceilingKey to forward to this
implementation.public Map.Entry<K,V> higherEntry(K key)
higherEntry in interface NavigableMap<K,V>protected Map.Entry<K,V> standardHigherEntry(K key)
higherEntry(K) in terms of the firstEntry() of
tailMap(Object, boolean). If you override tailMap, you may wish to override
higherEntry to forward to this implementation.protected K standardHigherKey(K key)
higherKey(K) in terms of higherEntry. If you override
higherEntry, you may wish to override higherKey to forward to this
implementation.public Map.Entry<K,V> firstEntry()
firstEntry in interface NavigableMap<K,V>protected Map.Entry<K,V> standardFirstEntry()
firstEntry() in terms of the iterator() of
ForwardingMap.entrySet(). If you override entrySet, you may wish to override
firstEntry to forward to this implementation.protected K standardFirstKey()
ForwardingSortedMap.firstKey() in terms of firstEntry. If you override
firstEntry, you may wish to override firstKey to forward to this
implementation.protected Map.Entry<K,V> standardLastEntry()
lastEntry() in terms of the iterator() of the
ForwardingMap.entrySet() of descendingMap(). If you override descendingMap, you may
wish to override lastEntry to forward to this implementation.protected K standardLastKey()
ForwardingSortedMap.lastKey() in terms of lastEntry. If you override
lastEntry, you may wish to override lastKey to forward to this implementation.public Map.Entry<K,V> pollFirstEntry()
pollFirstEntry in interface NavigableMap<K,V>protected Map.Entry<K,V> standardPollFirstEntry()
pollFirstEntry() in terms of the iterator of
entrySet. If you override entrySet, you may wish to override
pollFirstEntry to forward to this implementation.public Map.Entry<K,V> pollLastEntry()
pollLastEntry in interface NavigableMap<K,V>protected Map.Entry<K,V> standardPollLastEntry()
pollFirstEntry() in terms of the iterator of the
entrySet of descendingMap. If you override descendingMap, you may wish
to override pollFirstEntry to forward to this implementation.public NavigableMap<K,V> descendingMap()
descendingMap in interface NavigableMap<K,V>public NavigableSet<K> navigableKeySet()
navigableKeySet in interface NavigableMap<K,V>public NavigableSet<K> descendingKeySet()
descendingKeySet in interface NavigableMap<K,V>@Beta protected NavigableSet<K> standardDescendingKeySet()
descendingKeySet() as the navigableKeySet of
descendingMap(). (The ForwardingNavigableMap.StandardDescendingMap implementation implements
navigableKeySet on its own, so as not to cause an infinite loop.) If you override
descendingMap, you may wish to override descendingKeySet to forward to this
implementation.protected SortedMap<K,V> standardSubMap(K fromKey, K toKey)
ForwardingSortedMap.subMap(Object, Object) in terms of
subMap(Object, boolean, Object, boolean). If you override
subMap(K, boolean, K, boolean), you may wish to override subMap to forward to
this implementation.standardSubMap in class ForwardingSortedMap<K,V>public NavigableMap<K,V> subMap(K fromKey, boolean fromInclusive, K toKey, boolean toInclusive)
subMap in interface NavigableMap<K,V>public NavigableMap<K,V> headMap(K toKey, boolean inclusive)
headMap in interface NavigableMap<K,V>public NavigableMap<K,V> tailMap(K fromKey, boolean inclusive)
tailMap in interface NavigableMap<K,V>protected SortedMap<K,V> standardHeadMap(K toKey)
ForwardingSortedMap.headMap(Object) in terms of
headMap(Object, boolean). If you override headMap(K, boolean), you may wish
to override headMap to forward to this implementation.protected SortedMap<K,V> standardTailMap(K fromKey)
ForwardingSortedMap.tailMap(Object) in terms of
tailMap(Object, boolean). If you override tailMap(K, boolean), you may wish
to override tailMap to forward to this implementation.Copyright © 2010–2017. All rights reserved.