- All Implemented Interfaces:
Iterable<E>
,Collection<E>
,NavigableSet<E>
,SequencedCollection<E>
,SequencedSet<E>
,Set<E>
,SortedSet<E>
- Direct Known Subclasses:
ForwardingNavigableSet.StandardDescendingSet
Warning: The methods of ForwardingNavigableSet
forward indiscriminately
to the methods of the delegate. For example, overriding ForwardingCollection.add(E)
alone will not change
the behavior of ForwardingCollection.addAll(java.util.Collection<? extends E>)
, which can lead to unexpected behavior. In this case, you should
override addAll
as well, either providing your own implementation, or delegating to the
provided standardAddAll
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 ForwardingNavigableSet
.
Each of the standard
methods uses the set'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 Set
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.
- Since:
- 12.0
- Author:
- Louis Wasserman
-
Nested Class Summary
Modifier and TypeClassDescriptionprotected class
A sensible implementation ofNavigableSet.descendingSet()
in terms of the other methods ofNavigableSet
, notably includingNavigableSet.descendingIterator()
. -
Constructor Summary
ModifierConstructorDescriptionprotected
Constructor for use by subclasses. -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract NavigableSet
<E> delegate()
Returns the backing delegate instance that methods are forwarded to.pollLast()
standardCeiling
(E e) protected E
standardFloor
(E e) A sensible definition offloor(E)
in terms of thedescendingIterator
method ofheadSet(Object, boolean)
.standardHeadSet
(E toElement) A sensible definition ofForwardingSortedSet.headSet(Object)
in terms of theheadSet(Object, boolean)
method.standardHigher
(E e) protected E
standardLower
(E e) A sensible definition oflower(E)
in terms of thedescendingIterator
method ofheadSet(Object, boolean)
.A sensible definition ofpollFirst()
in terms of theiterator
method.A sensible definition ofpollLast()
in terms of thedescendingIterator
method.protected NavigableSet
<E> standardSubSet
(E fromElement, boolean fromInclusive, E toElement, boolean toInclusive) A sensible definition ofsubSet(Object, boolean, Object, boolean)
in terms of theheadSet
andtailSet
methods.standardSubSet
(E fromElement, E toElement) A sensible definition ofForwardingSortedSet.subSet(Object, Object)
in terms of thesubSet(Object, boolean, Object, boolean)
method.standardTailSet
(E fromElement) A sensible definition ofForwardingSortedSet.tailSet(Object)
in terms of thetailSet(Object, boolean)
method.Methods inherited from class com.google.common.collect.ForwardingSortedSet
comparator, first, headSet, last, standardContains, standardRemove, subSet, tailSet
Methods inherited from class com.google.common.collect.ForwardingSet
equals, hashCode, standardEquals, standardHashCode, standardRemoveAll
Methods inherited from class com.google.common.collect.ForwardingCollection
add, addAll, clear, contains, containsAll, isEmpty, iterator, remove, removeAll, retainAll, size, standardAddAll, standardClear, standardContainsAll, standardIsEmpty, standardRetainAll, standardToArray, standardToArray, standardToString, toArray, toArray
Methods inherited from class com.google.common.collect.ForwardingObject
toString
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.util.Collection
parallelStream, removeIf, stream, toArray
Methods inherited from interface java.util.NavigableSet
headSet, iterator, removeFirst, removeLast, reversed, subSet, tailSet
Methods inherited from interface java.util.Set
add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, remove, removeAll, retainAll, size, toArray, toArray
Methods inherited from interface java.util.SortedSet
addFirst, addLast, comparator, first, getFirst, getLast, last, spliterator
-
Constructor Details
-
ForwardingNavigableSet
protected ForwardingNavigableSet()Constructor for use by subclasses.
-
-
Method Details
-
delegate
Description copied from class:ForwardingObject
Returns the backing delegate instance that methods are forwarded to. Abstract subclasses generally override this method with an abstract method that has a more specific return type, such asForwardingSet.delegate()
. Concrete subclasses override this method to supply the instance being decorated.- Specified by:
delegate
in classForwardingSortedSet<E extends @Nullable Object>
-
lower
-
standardLower
A sensible definition oflower(E)
in terms of thedescendingIterator
method ofheadSet(Object, boolean)
. If you overrideheadSet(Object, boolean)
, you may wish to overridelower(E)
to forward to this implementation. -
floor
-
standardFloor
A sensible definition offloor(E)
in terms of thedescendingIterator
method ofheadSet(Object, boolean)
. If you overrideheadSet(Object, boolean)
, you may wish to overridefloor(E)
to forward to this implementation. -
ceiling
-
standardCeiling
A sensible definition ofceiling(E)
in terms of theiterator
method oftailSet(Object, boolean)
. If you overridetailSet(Object, boolean)
, you may wish to overrideceiling(E)
to forward to this implementation. -
higher
-
standardHigher
A sensible definition ofhigher(E)
in terms of theiterator
method oftailSet(Object, boolean)
. If you overridetailSet(Object, boolean)
, you may wish to overridehigher(E)
to forward to this implementation. -
pollFirst
-
standardPollFirst
A sensible definition ofpollFirst()
in terms of theiterator
method. If you overrideForwardingCollection.iterator()
you may wish to overridepollFirst()
to forward to this implementation. -
pollLast
-
standardPollLast
A sensible definition ofpollLast()
in terms of thedescendingIterator
method. If you overridedescendingIterator()
you may wish to overridepollLast()
to forward to this implementation. -
standardFirst
-
standardLast
-
descendingSet
- Specified by:
descendingSet
in interfaceNavigableSet<E extends @Nullable Object>
-
descendingIterator
- Specified by:
descendingIterator
in interfaceNavigableSet<E extends @Nullable Object>
-
subSet
public NavigableSet<E> subSet(E fromElement, boolean fromInclusive, E toElement, boolean toInclusive) - Specified by:
subSet
in interfaceNavigableSet<E extends @Nullable Object>
-
standardSubSet
protected NavigableSet<E> standardSubSet(E fromElement, boolean fromInclusive, E toElement, boolean toInclusive) A sensible definition ofsubSet(Object, boolean, Object, boolean)
in terms of theheadSet
andtailSet
methods. In many cases, you may wish to overridesubSet(Object, boolean, Object, boolean)
to forward to this implementation. -
standardSubSet
A sensible definition ofForwardingSortedSet.subSet(Object, Object)
in terms of thesubSet(Object, boolean, Object, boolean)
method. If you overridesubSet(Object, boolean, Object, boolean)
, you may wish to overrideForwardingSortedSet.subSet(Object, Object)
to forward to this implementation.- Overrides:
standardSubSet
in classForwardingSortedSet<E extends @Nullable Object>
-
headSet
- Specified by:
headSet
in interfaceNavigableSet<E extends @Nullable Object>
-
standardHeadSet
A sensible definition ofForwardingSortedSet.headSet(Object)
in terms of theheadSet(Object, boolean)
method. If you overrideheadSet(Object, boolean)
, you may wish to overrideForwardingSortedSet.headSet(Object)
to forward to this implementation. -
tailSet
- Specified by:
tailSet
in interfaceNavigableSet<E extends @Nullable Object>
-
standardTailSet
A sensible definition ofForwardingSortedSet.tailSet(Object)
in terms of thetailSet(Object, boolean)
method. If you overridetailSet(Object, boolean)
, you may wish to overrideForwardingSortedSet.tailSet(Object)
to forward to this implementation.
-