- All Implemented Interfaces:
Iterable<E>,Collection<E>,SequencedCollection<E>,SequencedSet<E>,Set<E>,SortedSet<E>
- Direct Known Subclasses:
ForwardingNavigableSet
Warning: The methods of ForwardingSortedSet 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 ForwardingSortedSet.
Each of the standard methods, where appropriate, 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:
- 2.0
- Author:
- Mike Bostock, Louis Wasserman
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription@Nullable Comparator<? super E> delegate()Returns the backing delegate instance that methods are forwarded to.first()last()protected booleanstandardContains(@Nullable Object object) A sensible definition ofForwardingCollection.contains(java.lang.Object)in terms of thefirst()method oftailSet(E).protected booleanstandardRemove(@Nullable Object object) A sensible definition ofForwardingCollection.remove(java.lang.Object)in terms of theiterator()method oftailSet(E).standardSubSet(E fromElement, E toElement) A sensible default implementation ofsubSet(Object, Object)in terms ofheadSet(Object)andtailSet(Object).Methods inherited from class com.google.common.collect.ForwardingSet
equals, hashCode, standardEquals, standardHashCode, standardRemoveAllMethods 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, toArrayMethods inherited from class com.google.common.collect.ForwardingObject
toStringMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.Collection
parallelStream, removeIf, stream, toArrayMethods inherited from interface java.util.Set
add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArrayMethods inherited from interface java.util.SortedSet
addFirst, addLast, getFirst, getLast, removeFirst, removeLast, reversed, spliterator
-
Constructor Details
-
ForwardingSortedSet
protected ForwardingSortedSet()Constructor for use by subclasses.
-
-
Method Details
-
delegate
Description copied from class:ForwardingObjectReturns 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:
delegatein classForwardingSet<E extends @Nullable Object>
-
comparator
- Specified by:
comparatorin interfaceSortedSet<E extends @Nullable Object>
-
first
-
headSet
-
last
-
subSet
-
tailSet
-
standardContains
A sensible definition ofForwardingCollection.contains(java.lang.Object)in terms of thefirst()method oftailSet(E). If you overridetailSet(E), you may wish to overrideForwardingCollection.contains(java.lang.Object)to forward to this implementation.- Overrides:
standardContainsin classForwardingCollection<E extends @Nullable Object>- Since:
- 7.0
-
standardRemove
A sensible definition ofForwardingCollection.remove(java.lang.Object)in terms of theiterator()method oftailSet(E). If you overridetailSet(E), you may wish to overrideForwardingCollection.remove(java.lang.Object)to forward to this implementation.- Overrides:
standardRemovein classForwardingCollection<E extends @Nullable Object>- Since:
- 7.0
-
standardSubSet
A sensible default implementation ofsubSet(Object, Object)in terms ofheadSet(Object)andtailSet(Object). In some situations, you may wish to overridesubSet(Object, Object)to forward to this implementation.- Since:
- 7.0
-