- 型パラメータ:
E
- このセットで保持される要素の型
- すべてのスーパー・インタフェース:
Collection<E>
,Iterable<E>
,SequencedCollection<E>
,SequencedSet<E>
,Set<E>
,SortedSet<E>
- 既知のすべての実装クラス:
ConcurrentSkipListSet
,TreeSet
SortedSet
です。 メソッドlower(E)
、floor(E)
、ceiling(E)
およびhigher(E)
は、それぞれ指定された要素より小さい、小さい、等しい、大きいまたは等しい、および大きい要素を返し、そのような要素がない場合はnull
を返します。
昇順または降順の順序で、NavigableSet
がアクセスしたり、トラバースしたりできる。 descendingSet()
メソッドは、すべてのリレーショナル・メソッドと方向メソッドの感覚を反転させたセットのビューを返します。 オペレーションやビューのパフォーマンスは通常、降順よりも昇順のほうが高速になります。 このインタフェースでは、最下位要素と最上位要素(存在する場合)を返して削除するメソッドpollFirst()
およびpollLast()
をさらに定義し、それ以外の場合はnull
を返します。 メソッドsubSet(E, boolean, E, boolean)
、headSet(E, boolean)
およびtailSet(E, boolean)
は、下限と上限が包含的か排他的かを記述する追加の引数を受け入れる際の、同じ名前のSortedSet
メソッドとは異なります。 どのNavigableSet
のサブセットでもNavigableSet
インタフェースを実装する必要があります。
null
要素を許可する実装では、ナビゲーション・メソッドの戻り値があいまいになる可能性があります。 ただし、その場合でも、contains(null)
をチェックすることで、その結果のあいまいさを明確にできます。 そのような問題を回避するため、このインタフェースの実装では、null
要素の挿入を許可しないようにすることをお薦めします。 (Comparable
要素から成るソート・セットは本来、null
を許可しません。)
subSet(E, E)
、headSet(E)
、およびtailSet(E)
メソッドがSortedSet
を返す仕様になっているのは、既存のSortedSet
実装を互換性を維持しながら改良してNavigableSet
を実装できるようにするためです。ただし、このインタフェースの拡張や実装では、これらのメソッドをオーバーライドしてNavigableSet
が返されるようにすることをお薦めします。
このインタフェースは、Java Collections Frameworkのメンバーです。
- 導入されたバージョン:
- 1.6
-
メソッドのサマリー
修飾子と型メソッド説明このセット内で、指定された要素と等しいかそれよりも大きい要素の中で最小のものを返します。そのような要素が存在しない場合はnull
を返します。このセットの要素のイテレータを降順で返します。このセットに含まれる要素の逆順のビューを返します。このセット内で、指定された要素と等しいかそれよりも小さい要素の中で最大のものを返します。そのような要素が存在しない場合はnull
を返します。このセットの要素がtoElement
より厳密に小さい部分のビューを返します。このセットのtoElement
よりも小さい要素(inclusive
がtrueの場合はそれよりも小さいかそれと等しい要素)を含む部分のビューを返します。このセット内で、指定された要素よりも確実に大きい要素の中で最小のものを返します。そのような要素が存在しない場合はnull
を返します。iterator()
このセットの要素のイテレータを昇順で返します。このセット内で、指定された要素よりも確実に小さい要素の中で最大のものを返します。そのような要素が存在しない場合はnull
を返します。最初(下端)の要素を取得して削除します。このセットが空の場合はnull
を返します。pollLast()
最後(上端)の要素を取得して削除します。このセットが空の場合はnull
を返します。default E
このコレクションの最初の要素を削除して返します(オプションの操作)。default E
このコレクションの最後の要素を削除して返します(オプションの操作)。default NavigableSet
<E> reversed()
このコレクションの逆順viewを返します。このセットのfromElement
-toElement
の要素範囲を持つ部分のビューを返します。このセットの要素の範囲がfromElement
、包含的、排他的、toElement
である部分のビューを返します。要素がfromElement
以上である、このセットの一部のビューを返します。このセットのfromElement
よりも大きい要素(inclusive
がtrueの場合はそれよりも大きいかそれと等しい要素)を含む部分のビューを返します。インタフェースjava.util.Collectionで宣言されたメソッド
parallelStream, removeIf, stream, toArray
インタフェースjava.util.Setで宣言されたメソッド
add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, remove, removeAll, retainAll, size, toArray, toArray
インタフェースjava.util.SortedSetで宣言されたメソッド
addFirst, addLast, comparator, first, getFirst, getLast, last, spliterator
-
メソッドの詳細
-
lower
このセット内で、指定された要素よりも確実に小さい要素の中で最大のものを返します。そのような要素が存在しない場合はnull
を返します。- パラメータ:
e
- 照合する値- 戻り値:
e
よりも小さい要素の中で最大のもの。そのような要素が存在しない場合はnull
- 例外:
ClassCastException
- 指定された要素を、セット内に現在存在している要素と比較できない場合NullPointerException
- 指定された要素がnullであり、このセットがnull要素を許可しない場合
-
floor
このセット内で、指定された要素と等しいかそれよりも小さい要素の中で最大のものを返します。そのような要素が存在しない場合はnull
を返します。- パラメータ:
e
- 照合する値- 戻り値:
e
と等しいか、それよりも小さい要素の中で最大のもの。そのような要素が存在しない場合はnull
- 例外:
ClassCastException
- 指定された要素を、セット内に現在存在している要素と比較できない場合NullPointerException
- 指定された要素がnullであり、このセットがnull要素を許可しない場合
-
ceiling
このセット内で、指定された要素と等しいかそれよりも大きい要素の中で最小のものを返します。そのような要素が存在しない場合はnull
を返します。- パラメータ:
e
- 照合する値- 戻り値:
e
と等しいか、それよりも大きい要素の中で最小のもの。そのような要素が存在しない場合はnull
- 例外:
ClassCastException
- 指定された要素を、セット内に現在存在している要素と比較できない場合NullPointerException
- 指定された要素がnullであり、このセットがnull要素を許可しない場合
-
higher
このセット内で、指定された要素よりも確実に大きい要素の中で最小のものを返します。そのような要素が存在しない場合はnull
を返します。- パラメータ:
e
- 照合する値- 戻り値:
e
よりも大きい要素の中で最小のもの。そのような要素が存在しない場合はnull
- 例外:
ClassCastException
- 指定された要素を、セット内に現在存在している要素と比較できない場合NullPointerException
- 指定された要素がnullであり、このセットがnull要素を許可しない場合
-
pollFirst
E pollFirst()最初(下端)の要素を取得して削除します。このセットが空の場合はnull
を返します。- 戻り値:
- 最初の要素。このセットが空の場合は
null
-
pollLast
E pollLast()最後(上端)の要素を取得して削除します。このセットが空の場合はnull
を返します。- 戻り値:
- 最後の要素。このセットが空の場合は
null
-
iterator
このセットの要素のイテレータを昇順で返します。 -
descendingSet
NavigableSet<E> descendingSet()このセットに含まれる要素の逆順のビューを返します。 降順セットはこのセットに連動しており、このセットでの変更は降順セットに反映され、その逆の場合も同様です。 いずれかのセットの反復処理中にいずれかのセットが変更された場合、反復処理の結果は定義されていません(イテレータ自身のremove
オペレーションを除く)。返されるセットの順序付けは、
Collections.reverseOrder
(comparator())
と同等になります。 式s.descendingSet().descendingSet()
から返されるs
のビューは基本的にs
と同等になります。- 戻り値:
- このセットの逆順のビュー
-
descendingIterator
このセットの要素のイテレータを降順で返します。 実質的にdescendingSet().iterator()
と同等です。- 戻り値:
- 降順の、このセットの要素のイテレータ
-
subSet
NavigableSet<E> subSet(E fromElement, boolean fromInclusive, E toElement, boolean toInclusive) このセットのfromElement
-toElement
の要素範囲を持つ部分のビューを返します。fromElement
とtoElement
が等しい場合、返されるセットは、fromInclusive
とtoInclusive
の両方がtrueでないかぎり、空になります。 返されるセットはこのセットに連動しており、返されるセットでの変更はこのセットに反映され、その逆の場合も同様です。 返されるセットは、このセットがサポートする任意のセット・オペレーションをすべてサポートします。返されるセットは、その範囲外の要素が挿入されようとすると、
IllegalArgumentException
をスローします。- パラメータ:
fromElement
- 返されるセットの下端点fromInclusive
- 返されるビューに下端点が含まれる場合はtrue
toElement
- 返されるセットの上端点toInclusive
- 返されるビューに上端点が含まれる場合はtrue
- 戻り値:
- このセットの
fromElement
(これを含む) -toElement
(これを含まない)の要素範囲を持つ部分のビュー - 例外:
ClassCastException
- このセットのコンパレータを使用して(このセットがコンパレータを持たない場合は自然順序付けを使用して)、fromElement
とtoElement
を相互に比較できない場合。 実装は、セット内に現在存在している要素とfromElement
またはtoElement
とを比較できない場合にこの例外をスローできる。ただし、必須ではない。NullPointerException
-fromElement
またはtoElement
がnullであり、このセットがnull要素を許可しない場合IllegalArgumentException
-fromElement
がtoElement
よりも大きい場合、またはこのセット自体が制限された範囲を持っており、fromElement
またはtoElement
がその範囲から外れている場合
-
headSet
NavigableSet<E> headSet(E toElement, boolean inclusive) このセットのtoElement
よりも小さい要素(inclusive
がtrueの場合はそれよりも小さいかそれと等しい要素)を含む部分のビューを返します。 返されるセットはこのセットに連動しており、返されるセットでの変更はこのセットに反映され、その逆の場合も同様です。 返されるセットは、このセットがサポートする任意のセット・オペレーションをすべてサポートします。返されるセットは、その範囲外の要素が挿入されようとすると、
IllegalArgumentException
をスローします。- パラメータ:
toElement
- 返されるセットの上端点inclusive
- 返されるビューに上端点が含まれる場合はtrue
- 戻り値:
- このセットの
toElement
よりも小さい要素(inclusive
がtrueの場合はそれよりも小さいかそれと等しい要素)を含む部分のビュー - 例外:
ClassCastException
-toElement
がこのセットのコンパレータと互換性がない場合(または、そのセットがコンパレータを持たない場合、toElement
がComparable
を実装していない場合)。 実装は、セット内に現在存在している要素とtoElement
とを比較できない場合にこの例外をスローできる。ただし、必須ではない。NullPointerException
-toElement
がnullであり、このセットがnull要素を許可しない場合IllegalArgumentException
- このセット自体が制限された範囲を持っており、toElement
がその範囲から外れている場合
-
tailSet
NavigableSet<E> tailSet(E fromElement, boolean inclusive) このセットのfromElement
よりも大きい要素(inclusive
がtrueの場合はそれよりも大きいかそれと等しい要素)を含む部分のビューを返します。 返されるセットはこのセットに連動しており、返されるセットでの変更はこのセットに反映され、その逆の場合も同様です。 返されるセットは、このセットがサポートする任意のセット・オペレーションをすべてサポートします。返されるセットは、その範囲外の要素が挿入されようとすると、
IllegalArgumentException
をスローします。- パラメータ:
fromElement
- 返されるセットの下端点inclusive
- 返されるビューに下端点が含まれる場合はtrue
- 戻り値:
- このセットの
fromElement
に等しいかそれよりも大きい要素を持つ部分のビュー - 例外:
ClassCastException
-fromElement
がこのセットのコンパレータと互換性がない場合(または、そのセットがコンパレータを持たない場合、fromElement
がComparable
を実装していない場合)。 実装は、セット内に現在存在している要素とfromElement
とを比較できない場合にこの例外をスローできる。ただし、必須ではない。NullPointerException
-fromElement
がnullであり、このセットがnull要素を許可しない場合IllegalArgumentException
- このセット自体が制限された範囲を持っており、fromElement
がその範囲から外れている場合
-
subSet
このセットの要素の範囲がfromElement
、包含的、排他的、toElement
である部分のビューを返します。 (fromElement
とtoElement
が等しい場合、返されるセットは空です。) 返されるセットはこのセットに連動しており、返されるセットでの変更はこのセットに反映され、その逆の場合も同様です。 返されるセットは、このセットがサポートする任意のセット・オペレーションをすべてサポートします。返されるセットは、その範囲外の要素が挿入されようとすると、
IllegalArgumentException
をスローします。subSet(fromElement, true, toElement, false)
と同等です。- 定義:
subSet
、インタフェースSortedSet<E>
- パラメータ:
fromElement
- 返されるセットの下端点(これを含む)toElement
- 返されるセットの上端点(これを含まない)- 戻り値:
- このセットの
fromElement
(これを含む) -toElement
(これを含まない)の要素範囲を持つ部分のビュー - 例外:
ClassCastException
- このセットのコンパレータを使用して(このセットがコンパレータを持たない場合は自然順序付けを使用して)、fromElement
とtoElement
を相互に比較できない場合。 実装は、セット内に現在存在している要素とfromElement
またはtoElement
とを比較できない場合にこの例外をスローできる。ただし、必須ではない。NullPointerException
-fromElement
またはtoElement
がnullであり、このセットがnull要素を許可しない場合IllegalArgumentException
-fromElement
がtoElement
よりも大きい場合、またはこのセット自体が制限された範囲を持っており、fromElement
またはtoElement
がその範囲から外れている場合
-
headSet
このセットの要素がtoElement
より厳密に小さい部分のビューを返します。 返されるセットはこのセットに連動しており、返されるセットでの変更はこのセットに反映され、その逆の場合も同様です。 返されるセットは、このセットがサポートする任意のセット・オペレーションをすべてサポートします。返されるセットは、その範囲外の要素が挿入されようとすると、
IllegalArgumentException
をスローします。headSet(toElement, false)
と同等です。- 定義:
headSet
、インタフェースSortedSet<E>
- パラメータ:
toElement
- 返されるセットの上端点(これを含まない)- 戻り値:
- このセットの要素が厳密に
toElement
より小さい部分のビュー - 例外:
ClassCastException
-toElement
がこのセットのコンパレータと互換性がない場合(または、そのセットがコンパレータを持たない場合、toElement
がComparable
を実装していない場合)。 実装は、セット内に現在存在している要素とtoElement
とを比較できない場合にこの例外をスローできる。ただし、必須ではない。NullPointerException
-toElement
がnullであり、このセットがnull要素を許可しない場合IllegalArgumentException
- このセット自体が制限された範囲を持っており、toElement
がその範囲から外れている場合
-
tailSet
要素がfromElement
以上である、このセットの一部のビューを返します。 返されるセットはこのセットに連動しており、返されるセットでの変更はこのセットに反映され、その逆の場合も同様です。 返されるセットは、このセットがサポートする任意のセット・オペレーションをすべてサポートします。返されるセットは、その範囲外の要素が挿入されようとすると、
IllegalArgumentException
をスローします。tailSet(fromElement, true)
と同等です。- 定義:
tailSet
、インタフェースSortedSet<E>
- パラメータ:
fromElement
- 返されるセットの下端点(これを含む)- 戻り値:
- このセットの
fromElement
に等しいかそれよりも大きい要素を持つ部分のビュー - 例外:
ClassCastException
-fromElement
がこのセットのコンパレータと互換性がない場合(または、そのセットがコンパレータを持たない場合、fromElement
がComparable
を実装していない場合)。 実装は、セット内に現在存在している要素とfromElement
とを比較できない場合にこの例外をスローできる。ただし、必須ではない。NullPointerException
-fromElement
がnullであり、このセットがnull要素を許可しない場合IllegalArgumentException
- このセット自体が制限された範囲を持っており、fromElement
がその範囲から外れている場合
-
removeFirst
default E removeFirst()このコレクションの最初の要素を削除して返します(オプションの操作)。- 定義:
- インタフェース
SequencedCollection<E>
内のremoveFirst
- 定義:
- インタフェース
SortedSet<E>
内のremoveFirst
- 実装要件:
- このセットが空でない場合、このインタフェースの実装は、
pollFirst
メソッドをコールした結果を返します。 それ以外の場合は、NoSuchElementException
がスローされます。 - 戻り値:
- 削除される要素
- 例外:
NoSuchElementException
- このコレクションが空の場合UnsupportedOperationException
- このコレクション実装がこの操作をサポートしていない場合- 導入されたバージョン:
- 21
-
removeLast
default E removeLast()このコレクションの最後の要素を削除して返します(オプションの操作)。- 定義:
- インタフェース
SequencedCollection<E>
内のremoveLast
- 定義:
- インタフェース
SortedSet<E>
内のremoveLast
- 実装要件:
- このセットが空でない場合、このインタフェースの実装は、
pollLast
メソッドをコールした結果を返します。 それ以外の場合は、NoSuchElementException
がスローされます。 - 戻り値:
- 削除される要素
- 例外:
NoSuchElementException
- このコレクションが空の場合UnsupportedOperationException
- このコレクション実装がこの操作をサポートしていない場合- 導入されたバージョン:
- 21
-
reversed
default NavigableSet<E> reversed()このコレクションの逆順viewを返します。 返されるビュー内の要素の出現順序は、このコレクション内の要素の出現順序の逆です。 逆の順序付けは、返されるビューのビュー・コレクションに含まれるすべての順序依存操作に影響します。 コレクション実装でこのビューの変更が許可されている場合、ベースとなるコレクションへの変更"ライトスルー"。 実装によっては、基礎となるコレクションに対する変更が、この逆方向ビューに表示される場合と表示されない場合があります。このメソッドは
descendingSet
と同等です。- 定義:
- インタフェース
SequencedCollection<E>
内のreversed
- 定義:
- インタフェース
SequencedSet<E>
内のreversed
- 定義:
- インタフェース
SortedSet<E>
内のreversed
- 実装要件:
- このインタフェースの実装は、
descendingSet
メソッドをコールした結果を返します。 - 戻り値:
- このコレクションの逆順ビュー(
NavigableSet
として) - 導入されたバージョン:
- 21
-