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 alone will not change the behavior of ForwardingMap, 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.
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
A sensible implementation of
NavigableMap in terms of the methods of this
NavigableMap.
|
protected class |
ForwardingNavigableMap
A sensible implementation of
NavigableMap in terms of the methods of this
NavigableMap.
|
ForwardingSortedMap.StandardKeySet ForwardingMap.StandardEntrySet , ForwardingMap.StandardValues | Modifier | Constructor and Description |
|---|---|
protected |
ForwardingNavigableMap()
Constructor for use by subclasses.
|
| Modifier and Type | Method and Description |
|---|---|
Map |
ceilingEntry(K key)
|
K |
ceilingKey(K key)
|
protected abstract NavigableMap |
delegate()
Returns the backing delegate instance that methods are forwarded to.
|
NavigableSet |
descendingKeySet()
|
NavigableMap |
descendingMap()
|
Map |
firstEntry()
|
Map |
floorEntry(K key)
|
K |
floorKey(K key)
|
NavigableMap |
headMap(K toKey, boolean inclusive)
|
Map |
higherEntry(K key)
|
K |
higherKey(K key)
|
Map |
lastEntry()
|
Map |
lowerEntry(K key)
|
K |
lowerKey(K key)
|
NavigableSet |
navigableKeySet()
|
Map |
pollFirstEntry()
|
Map |
pollLastEntry()
|
protected Map |
standardCeilingEntry(K key)
|
protected K |
standardCeilingKey(K key)
A sensible definition of
ceilingKey(K) in terms of
ceilingEntry.
|
protected NavigableSet |
standardDescendingKeySet()
|
protected Map |
standardFirstEntry()
|
protected K |
standardFirstKey()
A sensible definition of
ForwardingSortedMap in terms of
firstEntry.
|
protected Map |
standardFloorEntry(K key)
|
protected K |
standardFloorKey(K key)
A sensible definition of
floorKey(K) in terms of
floorEntry.
|
protected SortedMap |
standardHeadMap(K toKey)
A sensible definition of
ForwardingSortedMap in terms of
headMap(Object, boolean).
|
protected Map |
standardHigherEntry(K key)
|
protected K |
standardHigherKey(K key)
A sensible definition of
higherKey(K) in terms of
higherEntry.
|
protected Map |
standardLastEntry()
A sensible definition of
lastEntry() in terms of the
iterator() of the
ForwardingMap of
descendingMap().
|
protected K |
standardLastKey()
A sensible definition of
ForwardingSortedMap in terms of
lastEntry.
|
protected Map |
standardLowerEntry(K key)
|
protected K |
standardLowerKey(K key)
A sensible definition of
lowerKey(K) in terms of
lowerEntry.
|
protected Map |
standardPollFirstEntry()
|
protected Map |
standardPollLastEntry()
A sensible definition of
pollFirstEntry() in terms of the
iterator of the
entrySet of
descendingMap.
|
protected SortedMap |
standardSubMap(K fromKey, K toKey)
A sensible definition of
ForwardingSortedMap in terms of
subMap(Object, boolean, Object, boolean).
|
protected SortedMap |
standardTailMap(K fromKey)
A sensible definition of
ForwardingSortedMap in terms of
tailMap(Object, boolean).
|
NavigableMap |
subMap(K fromKey, boolean fromInclusive, K toKey, boolean toInclusive)
|
NavigableMap |
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()
ForwardingObject
ForwardingSet.delegate() . Concrete subclasses override this method to supply the instance being decorated.
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.
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.
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.
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.
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.
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.
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.
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()
public NavigableSet<K> navigableKeySet()
public NavigableSet<K> descendingKeySet()
@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.
public NavigableMap<K ,V> subMap(K fromKey, boolean fromInclusive, K toKey, boolean toInclusive)
public NavigableMap<K ,V> headMap(K toKey, boolean inclusive)
public NavigableMap<K ,V> tailMap(K fromKey, boolean inclusive)
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.