|
JavaTM 2 Platform Std. Ed. v1.3 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object | +--java.util.AbstractCollection
このクラスは、Collection インタフェースのスケルトン実装を提供し、このインタフェースを実装するのに必要な作業量を最小限に抑えます。
変更不可能なコレクションを実装するには、このクラスを拡張して、iterator メソッドおよび size メソッドの実装を提供します。iterator メソッドが返す反復子は、hasNext および next を実装している必要があります。
変更可能なコレクションを実装するには、上記に加えて、このクラスの add メソッドをオーバーライドすることと (オーバーライドしなかった場合は、UnsupportedOperationException がスローされる)、iterator メソッドで返される反復子が remove メソッドを実装している必要があります。
Collection インタフェースの仕様で推奨されているように、通常は、引数なしの void コンストラクタ、および引数に Collection をとるコンストラクタを提供してください。
実装の詳細については、このクラスの abstract メソッド以外の各メソッドのドキュメントを参照してください。より効率的な実装ができるコレクションの場合は、これらのメソッドをオーバーライドしてもかまいません。
Collection
コンストラクタの概要 | |
protected |
AbstractCollection()
唯一のコンストラクタです。 |
メソッドの概要 | |
boolean |
add(Object o)
指定された要素がこのコレクションに格納されていることを保証します (任意のオペレーション)。 |
boolean |
addAll(Collection c)
指定されたコレクションのすべての要素をこのコレクションに追加します (任意のオペレーション)。 |
void |
clear()
このコレクションからすべての要素を削除します (任意のオペレーション)。 |
boolean |
contains(Object o)
コレクションに指定された要素がある場合に true を返します。 |
boolean |
containsAll(Collection c)
このコレクション内に、指定されたコレクションのすべての要素がある場合に true を返します。 |
boolean |
isEmpty()
コレクションに要素がない場合に true を返します。 |
abstract Iterator |
iterator()
このコレクション中の要素に関係する反復子を返します。 |
boolean |
remove(Object o)
指定された要素のインスタンスがこのコレクションにあれば、そのインスタンスをコレクションから 1 つ削除します (任意のオペレーション)。 |
boolean |
removeAll(Collection c)
このコレクションから、指定されたコレクションに含まれる要素をすべて削除します (任意のオペレーション)。 |
boolean |
retainAll(Collection c)
このコレクションにおいて、指定されたコレクションに格納されている要素だけを保持します (任意のオペレーション)。 |
abstract int |
size()
このコレクション中の要素の数を返します。 |
Object[] |
toArray()
このコレクションの要素がすべて格納されている配列を返します。 |
Object[] |
toArray(Object[] a)
実行時の型が指定された配列の実行時の型と同じで、このコレクションのすべての要素が格納されている配列を返します。 |
String |
toString()
このコレクションの文字列表現を返します。 |
クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
インタフェース java.util.Collection から継承したメソッド |
equals, hashCode |
コンストラクタの詳細 |
protected AbstractCollection()
メソッドの詳細 |
public abstract Iterator iterator()
Collection
内の iterator
public abstract int size()
Collection
内の size
public boolean isEmpty()
この実装は size() == 0 の結果を返します。
Collection
内の isEmpty
public boolean contains(Object o)
この実装はコレクションの各要素について、指定された要素と等しいかどうかを順に繰り返し確認します。
Collection
内の contains
o
- このコレクションにあるかどうかを調べるオブジェクトpublic Object[] toArray()
この実装は、返される配列を割り当て、コレクションの各要素について繰り返します。つまり、各オブジェクト参照を配列の次の要素に格納するという処理を、第 0 要素から開始します。
Collection
内の toArray
public Object[] toArray(Object[] a)
指定された配列にコレクションが収まり、さらに空きがある場合、すなわち配列にコレクション以上の要素数がある場合には、コレクションの終端の直後にある配列の要素が null に設定されます。コレクションに null 要素がないことが呼び出し側でわかっている場合には、これにより、コレクションの長さを判定できます。
反復子によって要素が返される順序をコレクションが保証する場合、このメソッドは同じ順序で要素を返さなければなりません。
この実装は、配列がコレクションの格納に十分な大きさであるかを確認します。不十分な場合、この実装はリフレクションを使って、適切なサイズおよび型の配列を新しく割り当てます。次に、コレクションに対して、0 から順に配列の連続する要素へ各オブジェクト参照を格納する操作を反復します。配列がコレクションよりも大きい場合、コレクションの終端より後の最初の位置に null が格納されます。
Collection
内の toArray
a
- コレクションの要素の格納先の配列。配列のサイズが十分でない場合は、同じ実行時の型で新しい配列が格納用として割り当てられるNullPointerException
- 指定された配列が null である場合ArrayStoreException
- 指定された配列の実行時の型が、このコレクションにある各要素の、実行時の型のスーパータイプではない場合public boolean add(Object o)
この実装は、常に UnsupportedOperationException をスローします。
Collection
内の add
o
- コレクションにあるかどうかを調べる要素UnsupportedOperationException
- このコレクションが add メソッドをサポートしていない場合NullPointerException
- このコレクションが null 要素を許容しないときに、指定された要素が null の場合ClassCastException
- 指定された要素のクラスが原因で、コレクションに要素を追加できない場合IllegalArgumentException
- この要素の特性が原因で、このコレクションに要素を追加できなかった場合public boolean remove(Object o)
この実装は、コレクションの内容を次々調べ、指定された要素を探します。要素があれば、反復子の remove メソッドを使ってコレクションから要素を削除します。
このコレクションの iterator メソッドが返す反復子に remove メソッドが実装されていない場合、この実装は UnsupportedOperationException をスローします。
Collection
内の remove
o
- コレクションから削除される要素 (その要素がある場合)UnsupportedOperationException
- このコレクションが remove メソッドをサポートしていない場合public boolean containsAll(Collection c)
この実装は指定されたコレクションの内容を次々調べ、反復子によって返された各要素について、このコレクションに含まれるかどうかを順番に確認します。すべての要素がこのコレクションにある場合は true を返し、そうでない場合は false を返します。
Collection
内の containsAll
c
- このコレクションにあるかどうかを調べるコレクションcontains(Object)
public boolean addAll(Collection c)
この実装は、指定されたコレクションに対して反復を行い、反復子が返すオブジェクトをこのコレクションに順に追加していく操作を繰り返します。
add メソッドがオーバーライドされない限り、この実装は UnsupportedOperationException をスローします。
Collection
内の addAll
c
- 要素がこのコレクションに追加されるコレクションUnsupportedOperationException
- このコレクションが addAll メソッドをサポートしていない場合add(Object)
public boolean removeAll(Collection c)
この実装はこのコレクションの内容を次々調べ、反復子によって返された各要素について、指定されたコレクションに含まれるかどうかを順番に確認します。そのような要素があれば、反復子の remove メソッドを使ってこのコレクションから削除します。
iterator メソッドで返された反復子が remove メソッドを実装していない場合、この実装は UnsupportedOperationException をスローします。
Collection
内の removeAll
c
- コレクションから削除される要素UnsupportedOperationException
- このコレクションが removeAll をサポートしていない場合remove(Object)
,
contains(Object)
public boolean retainAll(Collection c)
この実装はこのコレクションの内容を次々調べ、反復子によって返された各要素について、指定されたコレクションに含まれるかどうかを順番に確認します。含まれない要素があれば、反復子の remove メソッドを使ってこのコレクションから削除します。
iterator メソッドで返される反復子が remove メソッドを実装していない場合、この実装は UnsupportedOperationException をスローします。
Collection
内の retainAll
c
- コレクションで保持される要素UnsupportedOperationException
- コレクションが retainAll メソッドをサポートしていない場合remove(Object)
,
contains(Object)
public void clear()
この実装はコレクションに対して、Iterator.remove オペレーションを使用して各要素を削除する操作を繰り返します。ほとんどの実装では、このメソッドをオーバーライドした方がより効率的です。
このコレクションの iterator メソッドで返される反復子が remove メソッドを実装していない場合、この実装は UnsupportedOperationException をスローします。
Collection
内の clear
UnsupportedOperationException
- このコレクションが remove メソッドをサポートしていない場合public String toString()
この実装は空の文字列バッファを作成し、最初に左角括弧を付加してから、コレクションの内容を次々調べて、各要素の文字列表現を順に付加していきます。各要素の後には、文字列 ", " が付加されます。ただし、最後の要素の後には、", " ではなく右角括弧が付加されます。最後に文字列バッファから文字列を取得し、その文字列を返します。
Object
内の toString
|
JavaTM 2 Platform Std. Ed. v1.3 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Java、Java 2D、JDBC は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2000 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.