モジュール java.base
パッケージ java.util.concurrent

クラスConcurrentSkipListSet<E>

  • 型パラメータ:
    E - このセットで保持される要素の型
    すべての実装されたインタフェース:
    Serializable, Cloneable, Iterable<E>, Collection<E>, NavigableSet<E>, Set<E>, SortedSet<E>

    public class ConcurrentSkipListSet<E>
    extends AbstractSet<E>
    implements NavigableSet<E>, Cloneable, Serializable
    ConcurrentSkipListMapに基づくスケーラブルな並行NavigableSet実装です。 セットの要素は、どのコンストラクタが使用されているかに応じて、その自然順序付けに従って、またはセット作成時に提供されるComparatorによってソートされます。

    この実装は、containsadd、およびremoveオペレーションとそれらのバリアントに予想される平均log(n)時間コストを提供します。 挿入、削除、アクセスの各オペレーションは、複数のスレッドによって並行して、安全に実行されます。

    イテレータおよびスプリッテレータは弱一貫性を持っています

    昇順で並べられたビューとそのイテレータは、降順の場合よりも高速になります。

    大半のコレクションとは異なり、sizeメソッドは一定時間のオペレーションではないことに留意してください。 これらのセットには非同期という特性があるため、現在の要素数を判定するには要素のトラバーサルが必要になります。そのため、このコレクションがトラバーサル中に変更された場合は、不正確な結果が報告される可能性があります。

    AbstractCollection.addAll(java.util.Collection<? extends E>)Collection.removeIf(java.util.function.Predicate<? super E>)Iterable.forEach(java.util.function.Consumer<? super T>)などの複数の要素を追加、削除、または検査するバルク操作は、アトミックに実行されることは保証されていません。 たとえば、 addAll操作と並行してforEachを走査すると、追加された要素の一部しか観察されない可能性があります。

    このクラスとそのイテレータは、SetおよびIteratorインタフェースのすべてのオプション・メソッドを実装します。 他のほとんどの並行処理コレクションの実装と同様、このクラスはnull要素の使用を許可しません。これは、nullの引数と戻り値は要素がない場合と確実に区別できないためです。

    このクラスは、Java Collections Frameworkのメンバーです。

    導入されたバージョン:
    1.6
    関連項目:
    直列化された形式
    • コンストラクタのサマリー

      コンストラクタ 
      コンストラクタ 説明
      ConcurrentSkipListSet()
      自然順序付けに従って要素を順序付けする、新しい空のセットを作成します。
      ConcurrentSkipListSet​(Collection<? extends E> c)
      指定されたコレクション内の要素を持ち、要素をその自然順序付けに従って順序付けする新しいセットを作成します。
      ConcurrentSkipListSet​(Comparator<? super E> comparator)
      指定されたコンパレータに従って要素の順序付けを行う、新しい空のセットを作成します。
      ConcurrentSkipListSet​(SortedSet<E> s)
      指定されたソート・セットと同じ要素を持ち、同じ順序付けを使用する、新しいセットを作成します。
    • メソッドのサマリー

      すべてのメソッド インスタンス・メソッド 具象メソッド 
      修飾子と型 メソッド 説明
      boolean add​(E e)
      指定された要素がセットの要素として存在しない場合に、その要素をセットに追加します。
      E ceiling​(E e)
      このセット内で、指定された要素と等しいかそれよりも大きい要素の中で最小のものを返します。そのような要素が存在しない場合はnullを返します。
      void clear()
      すべての要素をセットから削除します。
      ConcurrentSkipListSet<E> clone()
      ConcurrentSkipListSetのインスタンスのシャロー・コピーを返します。
      boolean contains​(Object o)
      指定された要素がセットに含まれている場合にtrueを返します。
      Iterator<E> descendingIterator()
      このセットの要素のイテレータを降順で返します。
      NavigableSet<E> descendingSet()
      このセットに含まれる要素の逆順のビューを返します。
      boolean equals​(Object o)
      指定されたオブジェクトがセットと同じかどうかを比較します。
      E first()
      セット内に現在ある最初(下端)の要素を返します。
      E floor​(E e)
      このセット内で、指定された要素と等しいかそれよりも小さい要素の中で最大のものを返します。そのような要素が存在しない場合はnullを返します。
      NavigableSet<E> headSet​(E toElement)
      このセットのtoElementよりも確実に小さい要素を持つ部分のビューを返します。
      NavigableSet<E> headSet​(E toElement, boolean inclusive)
      このセットのtoElementよりも小さい要素(inclusiveがtrueの場合はそれよりも小さいかそれと等しい要素)を含む部分のビューを返します。
      E higher​(E e)
      このセット内で、指定された要素よりも確実に大きい要素の中で最小のものを返します。そのような要素が存在しない場合はnullを返します。
      boolean isEmpty()
      このセットに要素が1つも含まれていない場合にtrueを返します。
      Iterator<E> iterator()
      このセットの要素のイテレータを昇順で返します。
      E last()
      セット内に現在ある最後(上端)の要素を返します。
      E lower​(E e)
      このセット内で、指定された要素よりも確実に小さい要素の中で最大のものを返します。そのような要素が存在しない場合はnullを返します。
      boolean remove​(Object o)
      指定された要素がこのセットに存在する場合に、要素をセットから削除します。
      boolean removeAll​(Collection<?> c)
      セットから、指定されたコレクション内に保持されているすべての要素を削除します。
      int size()
      このセット中の要素の数を返します。
      Spliterator<E> spliterator()
      このセット内の要素に対するSpliteratorを返します。
      NavigableSet<E> subSet​(E fromElement, boolean fromInclusive, E toElement, boolean toInclusive)
      このセットのfromElement - toElementの要素範囲を持つ部分のビューを返します。
      NavigableSet<E> subSet​(E fromElement, E toElement)
      このセットのfromElement (これを含む) - toElement (これを含まない)の要素範囲を持つ部分のビューを返します。
      NavigableSet<E> tailSet​(E fromElement)
      このセットのfromElementに等しいかそれよりも大きい要素を持つ部分のビューを返します。
      NavigableSet<E> tailSet​(E fromElement, boolean inclusive)
      このセットのfromElementよりも大きい要素(inclusiveがtrueの場合はそれよりも大きいかそれと等しい要素)を含む部分のビューを返します。
      • インタフェース java.lang.Iterableで宣言されたメソッド

        forEach
    • コンストラクタの詳細

      • ConcurrentSkipListSet

        public ConcurrentSkipListSet()
        自然順序付けに従って要素を順序付けする、新しい空のセットを作成します。
      • ConcurrentSkipListSet

        public ConcurrentSkipListSet​(Comparator<? super E> comparator)
        指定されたコンパレータに従って要素の順序付けを行う、新しい空のセットを作成します。
        パラメータ:
        comparator - このセットの順序付けを行うために使用されるコンパレータ。 nullの場合、要素の自然順序付けが使用される。
      • ConcurrentSkipListSet

        public ConcurrentSkipListSet​(Collection<? extends E> c)
        指定されたコレクション内の要素を持ち、要素をその自然順序付けに従って順序付けする新しいセットを作成します。
        パラメータ:
        c - 新しいセットを構成する要素
        例外:
        ClassCastException - c内の要素がComparableでないか、または相互に比較可能でない場合
        NullPointerException - 指定されたコレクションまたはそのいずれかの要素がnullである場合
      • ConcurrentSkipListSet

        public ConcurrentSkipListSet​(SortedSet<E> s)
        指定されたソート・セットと同じ要素を持ち、同じ順序付けを使用する、新しいセットを作成します。
        パラメータ:
        s - 新しいセットを構成する要素からなるソート・セット
        例外:
        NullPointerException - 指定されたソート・セット、またはその要素のいずれかがnullの場合
    • メソッドの詳細

      • clone

        public ConcurrentSkipListSet<E> clone()
        ConcurrentSkipListSetのインスタンスのシャロー・コピーを返します。 要素自体は複製されません。
        オーバーライド:
        clone、クラス: Object
        戻り値:
        このセットのシャロー・コピー
        関連項目:
        Cloneable
      • size

        public int size()
        このセット中の要素の数を返します。 このセットにInteger.MAX_VALUEを超える要素が含まれている場合は、Integer.MAX_VALUEを返します。

        大半のコレクションとは異なり、このメソッドは一定時間のオペレーションではないことに留意してください。 これらのセットには非同期という特性があるため、現在の要素数を判定するには要素すべてをトラバースしてカウントする必要があります。 また、このメソッドの実行中にサイズが変更される可能性もあり、その場合、返される値は不正確になります。 そのため、このメソッドは、通常は並行処理アプリケーションではあまり便利ではありません。

        定義:
        size、インタフェース: Collection<E>
        定義:
        size、インタフェース: Set<E>
        戻り値:
        セットの要素数
      • isEmpty

        public boolean isEmpty()
        このセットに要素が1つも含まれていない場合にtrueを返します。
        定義:
        isEmpty、インタフェース: Collection<E>
        定義:
        isEmpty、インタフェース: Set<E>
        オーバーライド:
        isEmpty、クラス: AbstractCollection<E>
        戻り値:
        このセットに要素が1つも含まれていない場合はtrue
      • contains

        public boolean contains​(Object o)
        指定された要素がセットに含まれている場合にtrueを返します。 つまり、このセットにo.equals(e)となる要素eが含まれている場合にだけtrueを返します。
        定義:
        contains、インタフェース: Collection<E>
        定義:
        contains、インタフェース: Set<E>
        オーバーライド:
        contains、クラス: AbstractCollection<E>
        パラメータ:
        o - このセットに含まれているかどうかがチェックされるオブジェクト
        戻り値:
        指定された要素がこのセットに含まれている場合はtrue
        例外:
        ClassCastException - 指定された要素がこのセット内に現在ある要素と比較できない場合
        NullPointerException - 指定された要素がnullである場合
      • add

        public boolean add​(E e)
        指定された要素がセットの要素として存在しない場合に、その要素をセットに追加します。 つまり、このセットにe.equals(e2)となる要素e2が含まれていない場合は、指定された要素eをこのセットに追加します。 このセット内にすでにその要素が含まれている場合、この呼出しではセットを変更せずにfalseを返します。
        定義:
        add、インタフェース: Collection<E>
        定義:
        add、インタフェース: Set<E>
        オーバーライド:
        add、クラス: AbstractCollection<E>
        パラメータ:
        e - このセットに追加される要素
        戻り値:
        このセット内に、指定された要素がなかった場合はtrue
        例外:
        ClassCastException - eが現在このセット内にある要素と比較できない場合
        NullPointerException - 指定された要素がnullである場合
      • remove

        public boolean remove​(Object o)
        指定された要素がこのセットに存在する場合に、要素をセットから削除します。 つまり、このセットにo.equals(e)となる要素eが含まれている場合は、そのような要素を削除します。 その要素がこのセットに含まれていた場合、つまり、呼出しの結果としてこのセットが変更された場合はtrueを返します。 呼出しが復帰したあとは、このセットはその要素を持っていません。
        定義:
        remove、インタフェース: Collection<E>
        定義:
        remove、インタフェース: Set<E>
        オーバーライド:
        remove、クラス: AbstractCollection<E>
        パラメータ:
        o - このセットから削除されるオブジェクト(そのオブジェクトが存在する場合)
        戻り値:
        セットが、指定された要素を保持していた場合はtrue
        例外:
        ClassCastException - oが現在このセット内にある要素と比較できない場合
        NullPointerException - 指定された要素がnullである場合
      • clear

        public void clear()
        すべての要素をセットから削除します。
        定義:
        clear、インタフェース: Collection<E>
        定義:
        clear、インタフェース: Set<E>
        オーバーライド:
        clear、クラス: AbstractCollection<E>
      • descendingIterator

        public Iterator<E> descendingIterator()
        このセットの要素のイテレータを降順で返します。
        定義:
        descendingIterator、インタフェース: NavigableSet<E>
        戻り値:
        降順の、このセットの要素のイテレータ
      • equals

        public boolean equals​(Object o)
        指定されたオブジェクトがセットと同じかどうかを比較します。 指定されたオブジェクトもセットで、2つのセットが同じサイズを持ち、指定されたセットのすべてのメンバーがこのセットに含まれる場合(つまり、このセットのすべてのメンバーが指定されたセットに含まれる場合)にtrueを返します。 この定義により、equalsメソッドがセット・インタフェースのさまざまな実装で適切に動作することが保証されます。
        定義:
        equals、インタフェース: Collection<E>
        定義:
        equals、インタフェース: Set<E>
        オーバーライド:
        equals、クラス: AbstractSet<E>
        パラメータ:
        o - このセットと等しいかどうかを比較するオブジェクト
        戻り値:
        指定されたオブジェクトがこのセットと等しい場合はtrue
        関連項目:
        Object.hashCode()HashMap
      • removeAll

        public boolean removeAll​(Collection<?> c)
        セットから、指定されたコレクション内に保持されているすべての要素を削除します。 指定されたコレクションもセットである場合、このオペレーションは、その値が2つのセットの非対称集合差分になるようにこのセットを効率的に変更します。
        定義:
        removeAll、インタフェース: Collection<E>
        定義:
        removeAll、インタフェース: Set<E>
        オーバーライド:
        removeAll、クラス: AbstractSet<E>
        パラメータ:
        c - このセットから削除される要素を含むコレクション
        戻り値:
        呼出しの結果としてこのセットが変更された場合はtrue
        例外:
        ClassCastException - このセットのある要素のクラスが、指定されたコレクションと互換でない場合(オプション)
        NullPointerException - 指定されたコレクションまたはそのいずれかの要素がnullである場合
        関連項目:
        AbstractCollection.remove(Object), AbstractCollection.contains(Object)
      • lower

        public E lower​(E e)
        インタフェースからコピーされた説明: NavigableSet
        このセット内で、指定された要素よりも確実に小さい要素の中で最大のものを返します。そのような要素が存在しない場合はnullを返します。
        定義:
        lower、インタフェース: NavigableSet<E>
        パラメータ:
        e - 照合する値
        戻り値:
        eよりも小さい要素の中で最大のもの。そのような要素が存在しない場合はnull
        例外:
        ClassCastException - 指定された要素を、セット内に現在存在している要素と比較できない場合
        NullPointerException - 指定された要素がnullである場合
      • floor

        public E floor​(E e)
        インタフェースからコピーされた説明: NavigableSet
        このセット内で、指定された要素と等しいかそれよりも小さい要素の中で最大のものを返します。そのような要素が存在しない場合はnullを返します。
        定義:
        floor、インタフェース: NavigableSet<E>
        パラメータ:
        e - 照合する値
        戻り値:
        eと等しいか、それよりも小さい要素の中で最大のもの。そのような要素が存在しない場合はnull
        例外:
        ClassCastException - 指定された要素を、セット内に現在存在している要素と比較できない場合
        NullPointerException - 指定された要素がnullである場合
      • ceiling

        public E ceiling​(E e)
        インタフェースからコピーされた説明: NavigableSet
        このセット内で、指定された要素と等しいかそれよりも大きい要素の中で最小のものを返します。そのような要素が存在しない場合はnullを返します。
        定義:
        ceiling、インタフェース: NavigableSet<E>
        パラメータ:
        e - 照合する値
        戻り値:
        eと等しいか、それよりも大きい要素の中で最小のもの。そのような要素が存在しない場合はnull
        例外:
        ClassCastException - 指定された要素を、セット内に現在存在している要素と比較できない場合
        NullPointerException - 指定された要素がnullである場合
      • higher

        public E higher​(E e)
        インタフェースからコピーされた説明: NavigableSet
        このセット内で、指定された要素よりも確実に大きい要素の中で最小のものを返します。そのような要素が存在しない場合はnullを返します。
        定義:
        higher、インタフェース: NavigableSet<E>
        パラメータ:
        e - 照合する値
        戻り値:
        eよりも大きい要素の中で最小のもの。そのような要素が存在しない場合はnull
        例外:
        ClassCastException - 指定された要素を、セット内に現在存在している要素と比較できない場合
        NullPointerException - 指定された要素がnullである場合
      • first

        public E first()
        インタフェースからコピーされた説明: SortedSet
        セット内に現在ある最初(下端)の要素を返します。
        定義:
        first、インタフェース: SortedSet<E>
        戻り値:
        セット内に現在ある最初(下端)の要素
        例外:
        NoSuchElementException - このセットが空の場合
      • last

        public E last()
        インタフェースからコピーされた説明: SortedSet
        セット内に現在ある最後(上端)の要素を返します。
        定義:
        last、インタフェース: SortedSet<E>
        戻り値:
        セット内に現在ある最後(上端)の要素
        例外:
        NoSuchElementException - このセットが空の場合
      • subSet

        public NavigableSet<E> subSet​(E fromElement,
                                      boolean fromInclusive,
                                      E toElement,
                                      boolean toInclusive)
        インタフェースからコピーされた説明: NavigableSet
        このセットのfromElement - toElementの要素範囲を持つ部分のビューを返します。 fromElementtoElementが等しい場合、返されるセットは、 fromInclusivetoInclusiveの両方がtrueでないかぎり、空になります。 返されるセットはこのセットに連動しており、返されるセットでの変更はこのセットに反映され、その逆の場合も同様です。 返されるセットは、このセットがサポートする任意のセット・オペレーションをすべてサポートします。

        返されるセットは、その範囲外の要素が挿入されようとすると、IllegalArgumentExceptionをスローします。

        定義:
        subSet、インタフェース: NavigableSet<E>
        パラメータ:
        fromElement - 返されるセットの下端点
        fromInclusive - 返されるビューに下端点が含まれる場合はtrue
        toElement - 返されるセットの上端点
        toInclusive - 返されるビューに上端点が含まれる場合はtrue
        戻り値:
        このセットのfromElement (これを含む) - toElement (これを含まない)の要素範囲を持つ部分のビュー
        例外:
        ClassCastException - このセットのコンパレータを使用して(このセットがコンパレータを持たない場合は自然順序付けを使用して)、fromElementtoElementを相互に比較できない場合。 実装は、セット内に現在存在している要素とfromElementまたはtoElementとを比較できない場合にこの例外をスローできる。ただし、必須ではない。
        NullPointerException - fromElementまたはtoElementがnullである場合
        IllegalArgumentException - fromElementtoElementよりも大きい場合、またはこのセット自体が制限された範囲を持っており、fromElementまたはtoElementがその範囲から外れている場合
      • headSet

        public NavigableSet<E> headSet​(E toElement,
                                       boolean inclusive)
        インタフェースからコピーされた説明: NavigableSet
        このセットのtoElementよりも小さい要素(inclusiveがtrueの場合はそれよりも小さいかそれと等しい要素)を含む部分のビューを返します。 返されるセットはこのセットに連動しており、返されるセットでの変更はこのセットに反映され、その逆の場合も同様です。 返されるセットは、このセットがサポートする任意のセット・オペレーションをすべてサポートします。

        返されるセットは、その範囲外の要素が挿入されようとすると、IllegalArgumentExceptionをスローします。

        定義:
        headSet、インタフェース: NavigableSet<E>
        パラメータ:
        toElement - 返されるセットの上端点
        inclusive - 返されるビューに上端点が含まれる場合はtrue
        戻り値:
        このセットのtoElementよりも小さい要素(inclusiveがtrueの場合はそれよりも小さいかそれと等しい要素)を含む部分のビュー
        例外:
        ClassCastException - toElementがこのセットのコンパレータと互換性がない場合(または、そのセットがコンパレータを持たない場合、toElementComparableを実装していない場合)。 実装は、セット内に現在存在している要素とtoElementとを比較できない場合にこの例外をスローできる。ただし、必須ではない。
        NullPointerException - toElementがnullである場合
        IllegalArgumentException - このセット自体が制限された範囲を持っており、toElementがその範囲から外れている場合
      • tailSet

        public NavigableSet<E> tailSet​(E fromElement,
                                       boolean inclusive)
        インタフェースからコピーされた説明: NavigableSet
        このセットのfromElementよりも大きい要素(inclusiveがtrueの場合はそれよりも大きいかそれと等しい要素)を含む部分のビューを返します。 返されるセットはこのセットに連動しており、返されるセットでの変更はこのセットに反映され、その逆の場合も同様です。 返されるセットは、このセットがサポートする任意のセット・オペレーションをすべてサポートします。

        返されるセットは、その範囲外の要素が挿入されようとすると、IllegalArgumentExceptionをスローします。

        定義:
        tailSet、インタフェース: NavigableSet<E>
        パラメータ:
        fromElement - 返されるセットの下端点
        inclusive - 返されるビューに下端点が含まれる場合はtrue
        戻り値:
        このセットのfromElementに等しいかそれよりも大きい要素を持つ部分のビュー
        例外:
        ClassCastException - fromElementがこのセットのコンパレータと互換性がない場合(または、そのセットがコンパレータを持たない場合、fromElementComparableを実装していない場合)。 実装は、セット内に現在存在している要素とfromElementとを比較できない場合にこの例外をスローできる。ただし、必須ではない。
        NullPointerException - fromElementがnullである場合
        IllegalArgumentException - このセット自体が制限された範囲を持っており、fromElementがその範囲から外れている場合
      • subSet

        public NavigableSet<E> subSet​(E fromElement,
                                      E toElement)
        インタフェースからコピーされた説明: NavigableSet
        このセットのfromElement (これを含む) - toElement (これを含まない)の要素範囲を持つ部分のビューを返します。 fromElementtoElementが等しい場合は、空のセットが返されます。 返されるセットはこのセットに連動しており、返されるセットでの変更はこのセットに反映され、その逆の場合も同様です。 返されるセットは、このセットがサポートする任意のセット・オペレーションをすべてサポートします。

        返されるセットは、その範囲外の要素が挿入されようとすると、IllegalArgumentExceptionをスローします。

        subSet(fromElement, true, toElement, false)と同等です。

        定義:
        subSet、インタフェース: NavigableSet<E>
        定義:
        subSet、インタフェース: SortedSet<E>
        パラメータ:
        fromElement - 返されるセットの下端点(これを含む)
        toElement - 返されるセットの上端点(これを含まない)
        戻り値:
        このセットのfromElement (これを含む) - toElement (これを含まない)の要素範囲を持つ部分のビュー
        例外:
        ClassCastException - このセットのコンパレータを使用して(このセットがコンパレータを持たない場合は自然順序付けを使用して)、fromElementtoElementを相互に比較できない場合。 実装は、セット内に現在存在している要素とfromElementまたはtoElementとを比較できない場合にこの例外をスローできる。ただし、必須ではない。
        NullPointerException - fromElementまたはtoElementがnullである場合
        IllegalArgumentException - fromElementtoElementよりも大きい場合、またはこのセット自体が制限された範囲を持っており、fromElementまたはtoElementがその範囲から外れている場合
      • headSet

        public NavigableSet<E> headSet​(E toElement)
        インタフェースからコピーされた説明: NavigableSet
        このセットのtoElementよりも確実に小さい要素を持つ部分のビューを返します。 返されるセットはこのセットに連動しており、返されるセットでの変更はこのセットに反映され、その逆の場合も同様です。 返されるセットは、このセットがサポートする任意のセット・オペレーションをすべてサポートします。

        返されるセットは、その範囲外の要素が挿入されようとすると、IllegalArgumentExceptionをスローします。

        headSet(toElement, false)と同等です。

        定義:
        headSet、インタフェース: NavigableSet<E>
        定義:
        headSet、インタフェース: SortedSet<E>
        パラメータ:
        toElement - 返されるセットの上端点(これを含まない)
        戻り値:
        このセットのtoElementよりも確実に小さい要素を持つ部分のビュー
        例外:
        ClassCastException - toElementがこのセットのコンパレータと互換性がない場合(または、そのセットがコンパレータを持たない場合、toElementComparableを実装していない場合)。 実装は、セット内に現在存在している要素とtoElementとを比較できない場合にこの例外をスローできる。ただし、必須ではない。
        NullPointerException - toElementがnullである場合
        IllegalArgumentException - このセット自体が制限された範囲を持っており、toElementがその範囲から外れている場合
      • tailSet

        public NavigableSet<E> tailSet​(E fromElement)
        インタフェースからコピーされた説明: NavigableSet
        このセットのfromElementに等しいかそれよりも大きい要素を持つ部分のビューを返します。 返されるセットはこのセットに連動しており、返されるセットでの変更はこのセットに反映され、その逆の場合も同様です。 返されるセットは、このセットがサポートする任意のセット・オペレーションをすべてサポートします。

        返されるセットは、その範囲外の要素が挿入されようとすると、IllegalArgumentExceptionをスローします。

        tailSet(fromElement, true)と同等です。

        定義:
        tailSet、インタフェース: NavigableSet<E>
        定義:
        tailSet、インタフェース: SortedSet<E>
        パラメータ:
        fromElement - 返されるセットの下端点(これを含む)
        戻り値:
        このセットのfromElementに等しいかそれよりも大きい要素を持つ部分のビュー
        例外:
        ClassCastException - fromElementがこのセットのコンパレータと互換性がない場合(または、そのセットがコンパレータを持たない場合、fromElementComparableを実装していない場合)。 実装は、セット内に現在存在している要素とfromElementとを比較できない場合にこの例外をスローできる。ただし、必須ではない。
        NullPointerException - fromElementがnullである場合
        IllegalArgumentException - このセット自体が制限された範囲を持っており、fromElementがその範囲から外れている場合
      • descendingSet

        public NavigableSet<E> descendingSet()
        このセットに含まれる要素の逆順のビューを返します。 降順セットはこのセットに連動しており、このセットでの変更は降順セットに反映され、その逆の場合も同様です。

        返されるセットの順序付けは、Collections.reverseOrder(comparator())と同等になります。 s.descendingSet().descendingSet()から返されるsのビューは基本的にsと同等になります。

        定義:
        descendingSet、インタフェース: NavigableSet<E>
        戻り値:
        このセットの逆順のビュー