クラスAbstractSet<E>
- 型パラメータ:
E- このセットによって保守される要素のタイプ
- すべての実装されたインタフェース:
Iterable<E>, Collection<E>, Set<E>
- 直系の既知のサブクラス:
ConcurrentSkipListSet, CopyOnWriteArraySet, EnumSet, HashSet, TreeSet
Setインタフェースのスケルトン実装を提供し、このインタフェースの実装に必要な作業を最小限に抑えます。
このクラスを拡張してセットを実装するプロセスは、AbstractCollectionを拡張してコレクションを実装するプロセスと同じです。ただし、このクラスのサブクラス内のすべてのメソッドおよびコンストラクタは、Setインタフェース(たとえば、addメソッドでは、オブジェクトの複数のインスタンスをセットに追加することはできません)によって課される追加の制約に従う必要があります。
このクラスは、AbstractCollectionクラスの実装をオーバーライドしないことに注意してください。 単に、equalsおよびhashCodeの実装を追加します。
このクラスは、Java Collections Frameworkのメンバーです。
- 導入されたバージョン:
- 1.2
- 関連項目:
-
コンストラクタのサマリー
コンストラクタ -
メソッドのサマリー
修飾子と型メソッド説明boolean指定されたオブジェクトがセットと同じかどうかを比較します。inthashCode()セットのハッシュ・コード値を返します。booleanremoveAll(Collection<?> c) このセットから、指定されたコレクションに含まれる要素をすべて削除します(オプションの操作)。クラスで宣言されたメソッド AbstractCollection
add, addAll, clear, contains, containsAll, isEmpty, iterator, remove, retainAll, toArray, toArray, toString修飾子と型メソッド説明boolean指定された要素がこのコレクションに格納されていることを保証します(オプションの操作)。booleanaddAll(Collection<? extends E> c) 指定されたコレクションのすべての要素をこのコレクションに追加します(オプションの操作)。voidclear()このコレクションからすべての要素を削除します(オプションの操作)。booleanこのコレクションに指定した要素が含まれている場合は、trueを返します。booleancontainsAll(Collection<?> c) 指定したコレクションのすべての要素がこのコレクションに含まれている場合、trueを返します。booleanisEmpty()このコレクションに要素がない場合にtrueを返します。iterator()このコレクション中の要素に関係するイテレータを返します。boolean指定された要素のインスタンスがこのコレクションにあれば、そのインスタンスをコレクションから1つ削除します(オプションの操作)。booleanretainAll(Collection<?> c) このコレクションにおいて、指定されたコレクションに格納されている要素だけを保持します(オプションの操作)。Object[]toArray()このコレクションの要素がすべて格納されている配列を返します。<T> T[]toArray(T[] a) このコレクション内のすべての要素を保持する配列を返します。返される配列の実行時の型は、指定された配列の型です。toString()このコレクションの文字列表現を返します。クラスオブジェクトで宣言されたメソッド
clone, finalize, getClass, notify, notifyAll, wait, wait, wait修飾子と型メソッド説明protected Objectclone()このオブジェクトのコピーを作成して、返します。protected voidfinalize()削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。最終決定は非推奨であり、将来のリリースで削除される可能性があります。final Class<?> getClass()このObjectの実行時クラスを返します。final voidnotify()このオブジェクトのモニターで待機中のスレッドを1つ再開します。final voidこのオブジェクトのモニターで待機中のすべてのスレッドを再開します。final voidwait()現在のスレッドが目覚めるまで待機します。通常、notifiedまたはinterruptedです。final voidwait(long timeoutMillis) 現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。final voidwait(long timeoutMillis, int nanos) 現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。インタフェースCollectionで宣言されたメソッド
parallelStream, removeIf, stream, toArray修飾子と型メソッド説明このコレクションをソースとして、潜在的に並列のStreamを返します。default boolean指定された述語(オプションの操作)を満たす、このコレクションのすべての要素を削除します。stream()このコレクションをソースとして使用して、逐次的なStreamを返します。default <T> T[]toArray(IntFunction<T[]> generator) 指定されたgenerator関数を使用してこのコレクションのすべての要素を含む配列を返し、返された配列を割り当てます。インタフェースSetで宣言されたメソッド
add, addAll, clear, contains, containsAll, isEmpty, iterator, remove, retainAll, size, spliterator, toArray, toArray修飾子と型メソッド説明boolean指定された要素がセット内になかった場合、セットに追加します(オプションの操作)。booleanaddAll(Collection<? extends E> c) 指定されたコレクションのすべての要素について、その要素がこのセット内にない場合、セットに追加します(オプションの操作)。voidclear()セットからすべての要素を削除します(オプションの操作)。boolean指定された要素がこのセットに含まれている場合にtrueを返します。booleancontainsAll(Collection<?> c) 指定されたコレクションのすべての要素がこのセットに含まれている場合にtrueを返します。booleanisEmpty()このセットに要素が1つも含まれていない場合にtrueを返します。iterator()セット内の各要素についてのイテレータを返します。boolean指定された要素がセット内にあった場合、セットから削除します(オプションの操作)。booleanretainAll(Collection<?> c) セット内の要素のうち、指定されたコレクション内にある要素だけを保持します(オプションの操作)。intsize()セット内の要素数(そのカーディナリティ)を返します。default Spliterator<E> このセット内の要素に対するSpliteratorを作成します。Object[]toArray()セット内のすべての要素が格納されている配列を返します。<T> T[]toArray(T[] a) セット内のすべての要素を格納している配列を返します。返される配列の実行時の型は、指定された配列の型になります。
-
コンストラクタの詳細
-
AbstractSet
protected AbstractSet()唯一のコンストラクタです。 (サブクラスのコンストラクタによる呼出し用で、通常は暗黙的に呼び出されます。)
-
-
メソッドの詳細
-
equals
public boolean equals(Object o) 指定されたオブジェクトがセットと同じかどうかを比較します。 指定されたオブジェクトもセットで、2つのセットが同じサイズで、指定されたセットのすべてのメンバーがこのセットに含まれている場合は、trueを返します。 これにより、equalsメソッドがSetインタフェースのさまざまな実装間で正しく動作することが保証されます。この実装では、最初に指定されたオブジェクトがこのセットであるかどうかをチェックします。その場合は、
trueを返します。 次に、指定されたオブジェクトについて、このセットと同じサイズのセットであるかどうかを調べます。指定されたオブジェクトがこのセットと同じサイズのセットではない場合はfalseを返します。 その場合、containsAll((Collection) o)が返されます。 -
hashCode
public int hashCode()セットのハッシュ・コード値を返します。 セットのハッシュ・コードは、セット内の要素のハッシュ・コードの合計として定義されます。ここで、null要素のハッシュ・コードはゼロとして定義されます。 これにより、s1.equals(s2)は、Object.hashCode()の一般契約で要求されるように、s1およびs2の2つのセットに対してs1.hashCode()==s2.hashCode()が暗黙的に指定されます。この実装は、セットに対して反復処理を行い、セット内の各要素に対して
hashCodeメソッドをコールして結果を追加します。 -
removeAll
public boolean removeAll(Collection<?> c) このセットから、指定されたコレクションに含まれる要素をすべて削除します(オプションの操作)。 指定されたコレクションもセットである場合、このオペレーションは、その値が2つのセットの非対称集合差分になるようにこのセットを効率的に変更します。この実装では、それぞれに対して
sizeメソッドを呼び出して、このセットと指定されたコレクションのどちらが小さいかを判断します。 このセットの要素の方が少ない場合、実装はこのセットのイテレータが返す順に各要素が指定されたコレクション内に含まれるかどうかを確認します。 含まれている場合は、イテレータのremoveメソッドを使用してこのセットから削除されます。 指定したコレクションの要素が少ない場合、実装では、このセットのremoveメソッドを使用して、このセットからイテレータによって返される各要素を削除します。iteratorメソッドから返されたイテレータがremoveメソッドを実装していない場合、この実装はUnsupportedOperationExceptionをスローすることに注意してください。- 定義:
removeAll、インタフェースCollection<E>- 定義:
removeAll、インタフェースSet<E>- オーバーライド:
removeAll、クラスAbstractCollection<E>- パラメータ:
c- このセットから削除される要素を含むコレクション- 戻り値:
- 呼出しの結果としてこのセットが変更された場合は
true - スロー:
UnsupportedOperationException-removeAll操作がこのセットでサポートされていない場合ClassCastException- このセットのある要素のクラスが、指定されたコレクションと互換でない場合(オプション)NullPointerException- このセットにnull要素が含まれており、指定されたコレクションがnull要素を許可しない場合(オプション)、または指定されたコレクションがnullの場合- 関連項目:
-