NavigableSet (Java SE 9 & JDK 9 ) (original) (raw)
Method Summary
All Methods Instance Methods Abstract Methods
Modifier and Type Method Description E ceiling(E e) Returns the least element in this set greater than or equal to the given element, or null if there is no such element. Iterator<E> descendingIterator() Returns an iterator over the elements in this set, in descending order. NavigableSet<E> descendingSet() Returns a reverse order view of the elements contained in this set. E floor(E e) Returns the greatest element in this set less than or equal to the given element, or null if there is no such element. SortedSet<E> headSet(E toElement) Returns a view of the portion of this set whose elements are strictly less than toElement. NavigableSet<E> headSet(E toElement, boolean inclusive) Returns a view of the portion of this set whose elements are less than (or equal to, if inclusive is true) toElement. E higher(E e) Returns the least element in this set strictly greater than the given element, or null if there is no such element. Iterator<E> iterator() Returns an iterator over the elements in this set, in ascending order. E lower(E e) Returns the greatest element in this set strictly less than the given element, or null if there is no such element. E pollFirst() Retrieves and removes the first (lowest) element, or returns null if this set is empty. E pollLast() Retrieves and removes the last (highest) element, or returns null if this set is empty. NavigableSet<E> subSet(E fromElement, boolean fromInclusive,E toElement, boolean toInclusive) Returns a view of the portion of this set whose elements range fromfromElement to toElement. SortedSet<E> subSet(E fromElement,E toElement) Returns a view of the portion of this set whose elements range from fromElement, inclusive, to toElement, exclusive. SortedSet<E> tailSet(E fromElement) Returns a view of the portion of this set whose elements are greater than or equal to fromElement. NavigableSet<E> tailSet(E fromElement, boolean inclusive) Returns a view of the portion of this set whose elements are greater than (or equal to, if inclusive is true) fromElement. * ### Methods inherited from interface java.util.[Collection](../../java/util/Collection.html "interface in java.util") `[parallelStream](../../java/util/Collection.html#parallelStream--), [removeIf](../../java/util/Collection.html#removeIf-java.util.function.Predicate-), [stream](../../java/util/Collection.html#stream--)` * ### Methods inherited from interface java.lang.[Iterable](../../java/lang/Iterable.html "interface in java.lang") `[forEach](../../java/lang/Iterable.html#forEach-java.util.function.Consumer-)` * ### Methods inherited from interface java.util.[Set](../../java/util/Set.html "interface in java.util") `[add](../../java/util/Set.html#add-E-), [addAll](../../java/util/Set.html#addAll-java.util.Collection-), [clear](../../java/util/Set.html#clear--), [contains](../../java/util/Set.html#contains-java.lang.Object-), [containsAll](../../java/util/Set.html#containsAll-java.util.Collection-), [equals](../../java/util/Set.html#equals-java.lang.Object-), [hashCode](../../java/util/Set.html#hashCode--), [isEmpty](../../java/util/Set.html#isEmpty--), [of](../../java/util/Set.html#of--), [of](../../java/util/Set.html#of-E-), [of](../../java/util/Set.html#of-E...-), [of](../../java/util/Set.html#of-E-E-), [of](../../java/util/Set.html#of-E-E-E-), [of](../../java/util/Set.html#of-E-E-E-E-), [of](../../java/util/Set.html#of-E-E-E-E-E-), [of](../../java/util/Set.html#of-E-E-E-E-E-E-), [of](../../java/util/Set.html#of-E-E-E-E-E-E-E-), [of](../../java/util/Set.html#of-E-E-E-E-E-E-E-E-), [of](../../java/util/Set.html#of-E-E-E-E-E-E-E-E-E-), [of](../../java/util/Set.html#of-E-E-E-E-E-E-E-E-E-E-), [remove](../../java/util/Set.html#remove-java.lang.Object-), [removeAll](../../java/util/Set.html#removeAll-java.util.Collection-), [retainAll](../../java/util/Set.html#retainAll-java.util.Collection-), [size](../../java/util/Set.html#size--), [toArray](../../java/util/Set.html#toArray--), [toArray](../../java/util/Set.html#toArray-T:A-)` * ### Methods inherited from interface java.util.[SortedSet](../../java/util/SortedSet.html "interface in java.util") `[comparator](../../java/util/SortedSet.html#comparator--), [first](../../java/util/SortedSet.html#first--), [last](../../java/util/SortedSet.html#last--), [spliterator](../../java/util/SortedSet.html#spliterator--)`
Method Detail
* #### lower [E](../../java/util/NavigableSet.html "type parameter in NavigableSet") lower([E](../../java/util/NavigableSet.html "type parameter in NavigableSet") e) Returns the greatest element in this set strictly less than the given element, or `null` if there is no such element. Parameters: `e` \- the value to match Returns: the greatest element less than `e`, or `null` if there is no such element Throws: `[ClassCastException](../../java/lang/ClassCastException.html "class in java.lang")` \- if the specified element cannot be compared with the elements currently in the set `[NullPointerException](../../java/lang/NullPointerException.html "class in java.lang")` \- if the specified element is null and this set does not permit null elements * #### floor [E](../../java/util/NavigableSet.html "type parameter in NavigableSet") floor([E](../../java/util/NavigableSet.html "type parameter in NavigableSet") e) Returns the greatest element in this set less than or equal to the given element, or `null` if there is no such element. Parameters: `e` \- the value to match Returns: the greatest element less than or equal to `e`, or `null` if there is no such element Throws: `[ClassCastException](../../java/lang/ClassCastException.html "class in java.lang")` \- if the specified element cannot be compared with the elements currently in the set `[NullPointerException](../../java/lang/NullPointerException.html "class in java.lang")` \- if the specified element is null and this set does not permit null elements * #### ceiling [E](../../java/util/NavigableSet.html "type parameter in NavigableSet") ceiling([E](../../java/util/NavigableSet.html "type parameter in NavigableSet") e) Returns the least element in this set greater than or equal to the given element, or `null` if there is no such element. Parameters: `e` \- the value to match Returns: the least element greater than or equal to `e`, or `null` if there is no such element Throws: `[ClassCastException](../../java/lang/ClassCastException.html "class in java.lang")` \- if the specified element cannot be compared with the elements currently in the set `[NullPointerException](../../java/lang/NullPointerException.html "class in java.lang")` \- if the specified element is null and this set does not permit null elements * #### higher [E](../../java/util/NavigableSet.html "type parameter in NavigableSet") higher([E](../../java/util/NavigableSet.html "type parameter in NavigableSet") e) Returns the least element in this set strictly greater than the given element, or `null` if there is no such element. Parameters: `e` \- the value to match Returns: the least element greater than `e`, or `null` if there is no such element Throws: `[ClassCastException](../../java/lang/ClassCastException.html "class in java.lang")` \- if the specified element cannot be compared with the elements currently in the set `[NullPointerException](../../java/lang/NullPointerException.html "class in java.lang")` \- if the specified element is null and this set does not permit null elements * #### pollFirst [E](../../java/util/NavigableSet.html "type parameter in NavigableSet") pollFirst() Retrieves and removes the first (lowest) element, or returns `null` if this set is empty. Returns: the first element, or `null` if this set is empty * #### pollLast [E](../../java/util/NavigableSet.html "type parameter in NavigableSet") pollLast() Retrieves and removes the last (highest) element, or returns `null` if this set is empty. Returns: the last element, or `null` if this set is empty * #### iterator [Iterator](../../java/util/Iterator.html "interface in java.util")<[E](../../java/util/NavigableSet.html "type parameter in NavigableSet")> iterator() Returns an iterator over the elements in this set, in ascending order. Specified by: `[iterator](../../java/util/Collection.html#iterator--)` in interface `[Collection](../../java/util/Collection.html "interface in java.util")<[E](../../java/util/NavigableSet.html "type parameter in NavigableSet")>` Specified by: `[iterator](../../java/lang/Iterable.html#iterator--)` in interface `[Iterable](../../java/lang/Iterable.html "interface in java.lang")<[E](../../java/util/NavigableSet.html "type parameter in NavigableSet")>` Specified by: `[iterator](../../java/util/Set.html#iterator--)` in interface `[Set](../../java/util/Set.html "interface in java.util")<[E](../../java/util/NavigableSet.html "type parameter in NavigableSet")>` Returns: an iterator over the elements in this set, in ascending order * #### descendingSet [NavigableSet](../../java/util/NavigableSet.html "interface in java.util")<[E](../../java/util/NavigableSet.html "type parameter in NavigableSet")> descendingSet() Returns a reverse order view of the elements contained in this set. The descending set is backed by this set, so changes to the set are reflected in the descending set, and vice-versa. If either set is modified while an iteration over either set is in progress (except through the iterator's own `remove` operation), the results of the iteration are undefined. The returned set has an ordering equivalent to[Collections.reverseOrder](../../java/util/Collections.html#reverseOrder-java.util.Comparator-)`(comparator())`. The expression `s.descendingSet().descendingSet()` returns a view of `s` essentially equivalent to `s`. Returns: a reverse order view of this set * #### descendingIterator [Iterator](../../java/util/Iterator.html "interface in java.util")<[E](../../java/util/NavigableSet.html "type parameter in NavigableSet")> descendingIterator() Returns an iterator over the elements in this set, in descending order. Equivalent in effect to `descendingSet().iterator()`. Returns: an iterator over the elements in this set, in descending order * #### subSet [NavigableSet](../../java/util/NavigableSet.html "interface in java.util")<[E](../../java/util/NavigableSet.html "type parameter in NavigableSet")> subSet([E](../../java/util/NavigableSet.html "type parameter in NavigableSet") fromElement, boolean fromInclusive, [E](../../java/util/NavigableSet.html "type parameter in NavigableSet") toElement, boolean toInclusive) Returns a view of the portion of this set whose elements range from`fromElement` to `toElement`. If `fromElement` and`toElement` are equal, the returned set is empty unless ` fromInclusive` and `toInclusive` are both true. The returned set is backed by this set, so changes in the returned set are reflected in this set, and vice-versa. The returned set supports all optional set operations that this set supports. The returned set will throw an `IllegalArgumentException` on an attempt to insert an element outside its range. Parameters: `fromElement` \- low endpoint of the returned set `fromInclusive` \- `true` if the low endpoint is to be included in the returned view `toElement` \- high endpoint of the returned set `toInclusive` \- `true` if the high endpoint is to be included in the returned view Returns: a view of the portion of this set whose elements range from`fromElement`, inclusive, to `toElement`, exclusive Throws: `[ClassCastException](../../java/lang/ClassCastException.html "class in java.lang")` \- if `fromElement` and`toElement` cannot be compared to one another using this set's comparator (or, if the set has no comparator, using natural ordering). Implementations may, but are not required to, throw this exception if `fromElement` or`toElement` cannot be compared to elements currently in the set. `[NullPointerException](../../java/lang/NullPointerException.html "class in java.lang")` \- if `fromElement` or`toElement` is null and this set does not permit null elements `[IllegalArgumentException](../../java/lang/IllegalArgumentException.html "class in java.lang")` \- if `fromElement` is greater than `toElement`; or if this set itself has a restricted range, and `fromElement` or`toElement` lies outside the bounds of the range. * #### headSet [NavigableSet](../../java/util/NavigableSet.html "interface in java.util")<[E](../../java/util/NavigableSet.html "type parameter in NavigableSet")> headSet([E](../../java/util/NavigableSet.html "type parameter in NavigableSet") toElement, boolean inclusive) Returns a view of the portion of this set whose elements are less than (or equal to, if `inclusive` is true) `toElement`. The returned set is backed by this set, so changes in the returned set are reflected in this set, and vice-versa. The returned set supports all optional set operations that this set supports. The returned set will throw an `IllegalArgumentException` on an attempt to insert an element outside its range. Parameters: `toElement` \- high endpoint of the returned set `inclusive` \- `true` if the high endpoint is to be included in the returned view Returns: a view of the portion of this set whose elements are less than (or equal to, if `inclusive` is true) `toElement` Throws: `[ClassCastException](../../java/lang/ClassCastException.html "class in java.lang")` \- if `toElement` is not compatible with this set's comparator (or, if the set has no comparator, if `toElement` does not implement [Comparable](../../java/lang/Comparable.html "interface in java.lang")). Implementations may, but are not required to, throw this exception if `toElement` cannot be compared to elements currently in the set. `[NullPointerException](../../java/lang/NullPointerException.html "class in java.lang")` \- if `toElement` is null and this set does not permit null elements `[IllegalArgumentException](../../java/lang/IllegalArgumentException.html "class in java.lang")` \- if this set itself has a restricted range, and `toElement` lies outside the bounds of the range * #### tailSet [NavigableSet](../../java/util/NavigableSet.html "interface in java.util")<[E](../../java/util/NavigableSet.html "type parameter in NavigableSet")> tailSet([E](../../java/util/NavigableSet.html "type parameter in NavigableSet") fromElement, boolean inclusive) Returns a view of the portion of this set whose elements are greater than (or equal to, if `inclusive` is true) `fromElement`. The returned set is backed by this set, so changes in the returned set are reflected in this set, and vice-versa. The returned set supports all optional set operations that this set supports. The returned set will throw an `IllegalArgumentException` on an attempt to insert an element outside its range. Parameters: `fromElement` \- low endpoint of the returned set `inclusive` \- `true` if the low endpoint is to be included in the returned view Returns: a view of the portion of this set whose elements are greater than or equal to `fromElement` Throws: `[ClassCastException](../../java/lang/ClassCastException.html "class in java.lang")` \- if `fromElement` is not compatible with this set's comparator (or, if the set has no comparator, if `fromElement` does not implement [Comparable](../../java/lang/Comparable.html "interface in java.lang")). Implementations may, but are not required to, throw this exception if `fromElement` cannot be compared to elements currently in the set. `[NullPointerException](../../java/lang/NullPointerException.html "class in java.lang")` \- if `fromElement` is null and this set does not permit null elements `[IllegalArgumentException](../../java/lang/IllegalArgumentException.html "class in java.lang")` \- if this set itself has a restricted range, and `fromElement` lies outside the bounds of the range * #### subSet [SortedSet](../../java/util/SortedSet.html "interface in java.util")<[E](../../java/util/NavigableSet.html "type parameter in NavigableSet")> subSet([E](../../java/util/NavigableSet.html "type parameter in NavigableSet") fromElement, [E](../../java/util/NavigableSet.html "type parameter in NavigableSet") toElement) Returns a view of the portion of this set whose elements range from `fromElement`, inclusive, to `toElement`, exclusive. (If `fromElement` and `toElement` are equal, the returned set is empty.) The returned set is backed by this set, so changes in the returned set are reflected in this set, and vice-versa. The returned set supports all optional set operations that this set supports. The returned set will throw an `IllegalArgumentException` on an attempt to insert an element outside its range. Equivalent to `subSet(fromElement, true, toElement, false)`. Specified by: `[subSet](../../java/util/SortedSet.html#subSet-E-E-)` in interface `[SortedSet](../../java/util/SortedSet.html "interface in java.util")<[E](../../java/util/NavigableSet.html "type parameter in NavigableSet")>` Parameters: `fromElement` \- low endpoint (inclusive) of the returned set `toElement` \- high endpoint (exclusive) of the returned set Returns: a view of the portion of this set whose elements range from`fromElement`, inclusive, to `toElement`, exclusive Throws: `[ClassCastException](../../java/lang/ClassCastException.html "class in java.lang")` \- if `fromElement` and`toElement` cannot be compared to one another using this set's comparator (or, if the set has no comparator, using natural ordering). Implementations may, but are not required to, throw this exception if `fromElement` or`toElement` cannot be compared to elements currently in the set. `[NullPointerException](../../java/lang/NullPointerException.html "class in java.lang")` \- if `fromElement` or`toElement` is null and this set does not permit null elements `[IllegalArgumentException](../../java/lang/IllegalArgumentException.html "class in java.lang")` \- if `fromElement` is greater than `toElement`; or if this set itself has a restricted range, and `fromElement` or`toElement` lies outside the bounds of the range * #### headSet [SortedSet](../../java/util/SortedSet.html "interface in java.util")<[E](../../java/util/NavigableSet.html "type parameter in NavigableSet")> headSet([E](../../java/util/NavigableSet.html "type parameter in NavigableSet") toElement) Returns a view of the portion of this set whose elements are strictly less than `toElement`. The returned set is backed by this set, so changes in the returned set are reflected in this set, and vice-versa. The returned set supports all optional set operations that this set supports. The returned set will throw an `IllegalArgumentException` on an attempt to insert an element outside its range. Equivalent to `headSet(toElement, false)`. Specified by: `[headSet](../../java/util/SortedSet.html#headSet-E-)` in interface `[SortedSet](../../java/util/SortedSet.html "interface in java.util")<[E](../../java/util/NavigableSet.html "type parameter in NavigableSet")>` Parameters: `toElement` \- high endpoint (exclusive) of the returned set Returns: a view of the portion of this set whose elements are strictly less than `toElement` Throws: `[ClassCastException](../../java/lang/ClassCastException.html "class in java.lang")` \- if `toElement` is not compatible with this set's comparator (or, if the set has no comparator, if `toElement` does not implement [Comparable](../../java/lang/Comparable.html "interface in java.lang")). Implementations may, but are not required to, throw this exception if `toElement` cannot be compared to elements currently in the set. `[NullPointerException](../../java/lang/NullPointerException.html "class in java.lang")` \- if `toElement` is null and this set does not permit null elements `[IllegalArgumentException](../../java/lang/IllegalArgumentException.html "class in java.lang")` \- if this set itself has a restricted range, and `toElement` lies outside the bounds of the range * #### tailSet [SortedSet](../../java/util/SortedSet.html "interface in java.util")<[E](../../java/util/NavigableSet.html "type parameter in NavigableSet")> tailSet([E](../../java/util/NavigableSet.html "type parameter in NavigableSet") fromElement) Returns a view of the portion of this set whose elements are greater than or equal to `fromElement`. The returned set is backed by this set, so changes in the returned set are reflected in this set, and vice-versa. The returned set supports all optional set operations that this set supports. The returned set will throw an `IllegalArgumentException` on an attempt to insert an element outside its range. Equivalent to `tailSet(fromElement, true)`. Specified by: `[tailSet](../../java/util/SortedSet.html#tailSet-E-)` in interface `[SortedSet](../../java/util/SortedSet.html "interface in java.util")<[E](../../java/util/NavigableSet.html "type parameter in NavigableSet")>` Parameters: `fromElement` \- low endpoint (inclusive) of the returned set Returns: a view of the portion of this set whose elements are greater than or equal to `fromElement` Throws: `[ClassCastException](../../java/lang/ClassCastException.html "class in java.lang")` \- if `fromElement` is not compatible with this set's comparator (or, if the set has no comparator, if `fromElement` does not implement [Comparable](../../java/lang/Comparable.html "interface in java.lang")). Implementations may, but are not required to, throw this exception if `fromElement` cannot be compared to elements currently in the set. `[NullPointerException](../../java/lang/NullPointerException.html "class in java.lang")` \- if `fromElement` is null and this set does not permit null elements `[IllegalArgumentException](../../java/lang/IllegalArgumentException.html "class in java.lang")` \- if this set itself has a restricted range, and `fromElement` lies outside the bounds of the range