クラスAbstractList<E>
- 型パラメータ:
E- このリストの要素のタイプ
- すべての実装されたインタフェース:
Iterable<E>, Collection<E>, List<E>, SequencedCollection<E>
- 直系の既知のサブクラス:
AbstractSequentialList, ArrayList, Vector
Listインタフェースのスケルトン実装を提供し、配列のような「ランダム・アクセス」データ・ストアに連動するこのインタフェースを実装するのに必要な作業量を最小限に抑えます。 リンク・リストのような順次アクセス・データ記憶域の場合は、このクラスではなくAbstractSequentialListを使用してください。
変更不可能なリストを実装するには、このクラスを拡張して、get(int)メソッドおよびsize()メソッドの実装を提供します。
変更可能なリストを実装するには、さらにset(int, E)メソッドもオーバーライドする必要があります(そうしない場合は、UnsupportedOperationExceptionがスローされる)。 そのリストが可変長である場合は、さらにadd(int, E)およびremove(int)メソッドもオーバーライドする必要があります。
Collectionインタフェースの仕様で推奨されているように、通常は、引数なしのvoidコンストラクタ、および引数にコレクションをとるコンストラクタを提供してください。
ほかのコレクションの抽象実装とは異なり、イテレータの実装を提供する必要はありません。イテレータおよびリスト・イテレータはこのクラスで実装され、ランダム・アクセス用のメソッドであるget(int)、set(int, E)、add(int, E)、およびremove(int)の上位に位置付けられます。
実装の詳細については、このクラスの抽象メソッド以外の各メソッドのドキュメントを参照してください。 より効率的な実装ができるコレクションの場合は、これらのメソッドをオーバーライドしてもかまいません。
このクラスは、Java Collections Frameworkのメンバーです。
- 導入されたバージョン:
- 1.2
-
フィールドのサマリー
フィールド -
コンストラクタのサマリー
コンストラクタ -
メソッドのサマリー
修飾子と型メソッド説明voidこのリスト内の指定された位置に、指定された要素を挿入します(オプションの操作)。boolean指定された要素をこのリストの最後に追加します(オプションの操作)。booleanaddAll(int index, Collection<? extends E> c) 指定されたコレクション内のすべての要素を、このリストの指定された位置に挿入します(オプションの操作)。voidclear()すべての要素をこのリストから削除します(オプションの操作)。boolean指定されたオブジェクトがこのリストと等しいかどうかを比較します。abstract Eget(int index) このリスト内の指定された位置にある要素を返します。inthashCode()このリストのハッシュ・コード値を返します。int指定された要素がこのリスト内で最初に検出された位置のインデックスを返します。指定された要素がこのリストにない場合は -1を返します。iterator()このリスト内の要素を適切な順序で反復するイテレータを返します。int指定された要素がこのリスト内で最後に検出された位置のインデックスを返します。指定された要素がこのリストにない場合は -1を返します。このリスト内の要素を(適切な順序で)反復するリスト・イテレータを返します。listIterator(int index) リスト内の指定された位置で始まる、リスト内の要素を(適切な順序で)反復するリスト・イテレータを返します。remove(int index) このリスト内の指定された位置にある要素を削除します(オプションの操作)。protected voidremoveRange(int fromIndex, int toIndex) fromIndex(これを含む)からtoIndex(これを含まない)の範囲のインデックスを持つすべての要素をこのリストから削除します。このリスト内の指定された位置にある要素を、指定された要素に置き換えます(オプションの操作)。subList(int fromIndex, int toIndex) このリストの、指定されたfromIndex(これを含む)からtoIndex(これを含まない)までの部分のビューを返します。クラスで宣言されたメソッド AbstractCollection
addAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArray, toString修飾子と型メソッド説明booleanaddAll(Collection<? extends E> c) 指定されたコレクションのすべての要素をこのコレクションに追加します(オプションの操作)。booleanこのコレクションに指定した要素が含まれている場合は、trueを返します。booleancontainsAll(Collection<?> c) 指定したコレクションのすべての要素がこのコレクションに含まれている場合、trueを返します。booleanisEmpty()このコレクションに要素がない場合にtrueを返します。boolean指定された要素のインスタンスがこのコレクションにあれば、そのインスタンスをコレクションから1つ削除します(オプションの操作)。booleanremoveAll(Collection<?> c) 指定されたコレクションにも格納されているこのコレクションのすべての要素を削除します(オプションの操作)。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関数を使用してこのコレクションのすべての要素を含む配列を返し、返された配列を割り当てます。インタフェースListで宣言されたメソッド
addAll, addFirst, addLast, contains, containsAll, getFirst, getLast, isEmpty, remove, removeAll, removeFirst, removeLast, replaceAll, retainAll, reversed, size, sort, spliterator, toArray, toArray修飾子と型メソッド説明booleanaddAll(Collection<? extends E> c) 指定されたコレクション内のすべての要素を、指定されたコレクションのイテレータによって返される順序で、このリストの最後に追加します(オプションの操作)。default voidこのコレクションの最初の要素として要素を追加します (オプションの操作)。default voidこのコレクションの最後の要素として要素を追加します (オプションの操作)。boolean指定された要素がこのリストに含まれている場合にtrueを返します。booleancontainsAll(Collection<?> c) 指定されたコレクションのすべての要素がこのリストに含まれている場合にtrueを返します。default EgetFirst()このコレクションの最初の要素を取得します。default EgetLast()このコレクションの最後の要素を取得します。booleanisEmpty()このリストに要素がない場合にtrueを返します。boolean指定された要素がこのリストにあれば、その最初のものをリストから削除します(オプションの操作)。booleanremoveAll(Collection<?> c) このリストから、指定されたコレクションに含まれる要素をすべて削除します(オプションの操作)。default Eこのコレクションの最初の要素を削除して返します(オプションの操作)。default Eこのコレクションの最後の要素を削除して返します(オプションの操作)。default voidreplaceAll(UnaryOperator<E> operator) このリストの各要素を、その要素(オプションの操作)に演算子を適用した結果に置き換えます。booleanretainAll(Collection<?> c) このリスト内で、指定されたコレクションに含まれている要素だけを保持します(オプションの操作)。reversed()このコレクションの逆順viewを返します。intsize()このリスト内にある要素の数を返します。default voidsort(Comparator<? super E> c) このリストは、指定されたComparator(オプションの操作)によって誘導された順序に従ってソートされます。default Spliterator<E> このリスト内の要素に対するSpliteratorを作成します。Object[]toArray()このリスト内のすべての要素を適切な順序で(最初の要素から最後の要素へ)含んでいる配列を返します。<T> T[]toArray(T[] a) このリスト内のすべての要素を適切な順序で(最初の要素から最後の要素へ)含んでいる配列を返します。返される配列の実行時の型は、指定された配列の型になります。
-
フィールド詳細
-
modCount
protected transient int modCountこのリストの構造が変更された回数です。 構造の変更とは、リストのサイズの変更や、その他の進行中の反復処理が不正な結果をもたらすような変更のことです。このフィールドは、
iteratorメソッドおよびlistIteratorメソッドによって返されるイテレータおよびリスト・イテレータの実装によって使用されます。 このフィールドの値が予期しない形で変化した場合、イテレータやリスト・イテレータはnext、remove、previous、set、またはaddのオペレーションに応じてConcurrentModificationExceptionをスローします。 これは、反復処理中の並行変更を前にして、未確定動作ではなくフェイルファスト動作を提供します。このフィールドをサブクラスで使用するのはオプションです。 サブクラスでフェイルファスト・イテレータ(およびリスト・イテレータ)を提供する場合は、その
add(int, E)およびremove(int)メソッド(およびそれがオーバーライドする他のメソッドのうちでリストに構造的な変更を加えるもの)の内部で、このフィールドを増分する必要があるだけです。add(int, E)またはremove(int)に対する1回の呼出しでは、フィールドに1だけ加える必要があります。そうしないと、イテレータ(およびリスト・イテレータ)が誤ってConcurrentModificationExceptionsをスローすることになります。 実装でフェイルファスト・イテレータを提供しない場合は、このフィールドを無視してもかまいません。
-
-
コンストラクタの詳細
-
AbstractList
protected AbstractList()唯一のコンストラクタです。 (サブクラスのコンストラクタによる呼出し用で、通常は暗黙的に呼び出されます。)
-
-
メソッドの詳細
-
add
public boolean add(E e) 指定された要素をこのリストの最後に追加します(オプションの操作)。このオペレーションをサポートするリストは、リストに追加できる要素に制限を加える場合があります。 たとえば、リストにはnull要素の追加を拒否するものもあれば、追加される要素の型について制限を加えるものもあります。 Listクラスは、追加できる要素について制約があれば、ドキュメントでそれを明確に記述するようにしてください。
- 定義:
add、インタフェースCollection<E>- 定義:
add、インタフェースList<E>- オーバーライド:
add、クラスAbstractCollection<E>- 実装要件:
- この実装では
add(size(), e)を呼び出します。この実装は、
add(int, E)がオーバーライドされないかぎりUnsupportedOperationExceptionをスローします。 - パラメータ:
e- このリストに追加される要素- 戻り値:
true(Collection.add(E)で指定されているとおり)- スロー:
UnsupportedOperationException-addオペレーションがこのリストでサポートされない場合ClassCastException- 指定された要素のクラスが原因で、このリストにその要素を追加できない場合NullPointerException- 指定された要素がnullで、このリストがnull要素を許可しない場合IllegalArgumentException- この要素のあるプロパティが原因で、このリストにその要素を追加できない場合
-
get
public abstract E get(int index) このリスト内の指定された位置にある要素を返します。- 定義:
get、インタフェースList<E>- パラメータ:
index- 返される要素のインデックス- 戻り値:
- このリスト内の指定された位置にある要素
- スロー:
IndexOutOfBoundsException- 索引が(index < 0 || index >= size())の範囲外であるかどうか
-
set
このリスト内の指定された位置にある要素を、指定された要素に置き換えます(オプションの操作)。- 定義:
set、インタフェースList<E>- 実装要件:
- この実装は、常に
UnsupportedOperationExceptionをスローします。 - パラメータ:
index- 置換される要素のインデックス。element- 指定された位置に格納される要素。- 戻り値:
- 指定された位置に以前あった要素。
- スロー:
UnsupportedOperationException-set操作がこのリストでサポートされていない場合ClassCastException- 指定された要素のクラスが原因で、このリストにその要素を追加できない場合NullPointerException- 指定された要素がnullで、このリストがnull要素を許可しない場合IllegalArgumentException- 指定された要素のあるプロパティが原因で、このリストにその要素を追加できない場合IndexOutOfBoundsException- 索引が(index < 0 || index >= size())の範囲外であるかどうか
-
add
public void add(int index, E element) このリスト内の指定された位置に、指定された要素を挿入します(オプションの操作)。 その位置とそれ以降に要素があればそれらを右に移動させ、各要素のインデックスに1を加えます。- 定義:
add、インタフェースList<E>- 実装要件:
- この実装は、常に
UnsupportedOperationExceptionをスローします。 - パラメータ:
index- 指定の要素が挿入される位置のインデックスelement- 挿入される要素- スロー:
UnsupportedOperationException-addオペレーションがこのリストでサポートされない場合ClassCastException- 指定された要素のクラスが原因で、このリストにその要素を追加できない場合NullPointerException- 指定された要素がnullで、このリストがnull要素を許可しない場合IllegalArgumentException- 指定された要素のあるプロパティが原因で、このリストにその要素を追加できない場合IndexOutOfBoundsException- インデックスが範囲外の場合(index < 0||index> size())
-
remove
public E remove(int index) このリスト内の指定された位置にある要素を削除します(オプションの操作)。 後続の要素を左に移動します(インデックスから1を減算)。 リストから削除された要素が返されます。- 定義:
remove、インタフェースList<E>- 実装要件:
- この実装は、常に
UnsupportedOperationExceptionをスローします。 - パラメータ:
index- 削除される要素のインデックス- 戻り値:
- 指定された位置に以前あった要素。
- スロー:
UnsupportedOperationException-remove操作がこのリストでサポートされていない場合IndexOutOfBoundsException- 索引が(index < 0 || index >= size())の範囲外であるかどうか
-
indexOf
public int indexOf(Object o) 指定された要素がこのリスト内で最初に検出された位置のインデックスを返します。指定された要素がこのリストにない場合は -1を返します。 より正式には、Objects.equals(o, get(i))のように最も低い索引iを戻し、そのような索引がない場合は -1を戻します。- 定義:
indexOf、インタフェースList<E>- 実装要件:
- この実装は、
listIterator()を使って、最初にリスト・イテレータを取得します。 次に、指定された要素が見つかるか、あるいはリストの末尾に達するまで、リストの内容を次々に調べます。 - パラメータ:
o- 検索する要素- 戻り値:
- 指定された要素がこのリスト内で最初に検出された位置のインデックス。その要素がこのリストにない場合は -1
- スロー:
ClassCastException- 指定された要素の型が、このリストと互換でない場合(オプション)NullPointerException- 指定された要素がnullで、このリストがnull要素を許可しない場合(オプション)
-
lastIndexOf
public int lastIndexOf(Object o) 指定された要素がこのリスト内で最後に検出された位置のインデックスを返します。指定された要素がこのリストにない場合は -1を返します。 より正式には、Objects.equals(o, get(i))のように最も高い索引iを戻し、そのような索引がない場合は -1を戻します。- 定義:
lastIndexOf、インタフェースList<E>- 実装要件:
- この実装は、
listIterator(size())を使って、最初にリストの末尾を指すリスト・イテレータを取得します。 次に、指定された要素が見つかるか、あるいはリストの先頭に達するまで、リスト内容を逆方向に次々調べます。 - パラメータ:
o- 検索する要素- 戻り値:
- 指定された要素がこのリスト内で最後に検出された位置のインデックス。その要素がこのリストにない場合は -1
- スロー:
ClassCastException- 指定された要素の型が、このリストと互換でない場合(オプション)NullPointerException- 指定された要素がnullで、このリストがnull要素を許可しない場合(オプション)
-
clear
public void clear()すべての要素をこのリストから削除します(オプションの操作)。 この呼出しが戻ると、このリストは空になります。- 定義:
clear、インタフェースCollection<E>- 定義:
clear、インタフェースList<E>- オーバーライド:
clear、クラスAbstractCollection<E>- 実装要件:
- この実装では
removeRange(0, size())を呼び出します。この実装は、
remove(int index)またはremoveRange(int fromIndex, int toIndex)がオーバーライドされないかぎりUnsupportedOperationExceptionをスローします。 - スロー:
UnsupportedOperationException-clearオペレーションがこのリストでサポートされない場合
-
addAll
public boolean addAll(int index, Collection<? extends E> c) 指定されたコレクション内のすべての要素を、このリストの指定された位置に挿入します(オプションの操作)。 その位置とそれ以降に要素がある場合は、それらを右に移動して、各要素のインデックスに1を加えます。 新しい要素は、指定されたコレクションのイテレータによって返される順序でこのリストに挿入されます。 オペレーションの進行中に、指定されたコレクションが変更された場合の、このオペレーションの動作は定義されていません。 (これは、指定されたコレクションがこのリストで、しかも空ではない場合に起こります。)- 定義:
addAll、インタフェースList<E>- 実装要件:
- この実装は、指定されたコレクションのイテレータを取得し、イテレータから取得した要素をこのリストの適切な位置に1つずつ挿入する操作を繰り返します。挿入には
add(int, E)メソッドを使用します。 多くの場合、実装では、このメソッドをオーバーライドしたほうが効率的です。この実装は、
add(int, E)がオーバーライドされないかぎりUnsupportedOperationExceptionをスローします。 - パラメータ:
index- 指定されたコレクションの最初の要素を挿入する位置のインデックス。c- このリストに追加される要素を含むコレクション。- 戻り値:
- 呼出しの結果としてこのリストが変更された場合は
true - スロー:
UnsupportedOperationException-addAll操作がこのリストでサポートされていない場合ClassCastException- 指定されたコレクションの要素のクラスが原因で、このリストにその要素を追加できない場合NullPointerException- 指定されたコレクションに1つ以上のnull要素が含まれており、このリストがnull要素を許可しない場合、または指定されたコレクションがnullの場合IllegalArgumentException- 指定されたコレクションの要素のあるプロパティが原因で、このリストにその要素を追加できない場合IndexOutOfBoundsException- インデックスが範囲外の場合(index < 0||index> size())
-
iterator
このリスト内の要素を適切な順序で反復するイテレータを返します。- 定義:
iterator、インタフェースCollection<E>- 定義:
iterator、インタフェースIterable<E>- 定義:
iterator、インタフェースList<E>- 定義:
iterator、クラスAbstractCollection<E>- 実装要件:
- この実装は、イテレータ・インタフェースの簡単な実装を返します。この処理では、基になるリストの
size()、get(int)、およびremove(int)といった各メソッドを利用します。このメソッドで返されるイテレータは、リストの
remove(int)メソッドがオーバーライドされないかぎり、removeメソッドを呼び出すとUnsupportedOperationExceptionをスローします。この実装は、(protected)
modCountフィールドの仕様で説明されているように、同時変更を前にして実行時の例外をスローすることもあります。 - 戻り値:
- リスト内の要素を適切な順序で反復するイテレータ
-
listIterator
public ListIterator<E> listIterator()このリスト内の要素を(適切な順序で)反復するリスト・イテレータを返します。- 定義:
listIterator、インタフェースList<E>- 実装要件:
- この実装では
listIterator(0)が返されます。 - 戻り値:
- このリスト内の要素を(適切な順序で)反復するリスト・イテレータ
- 関連項目:
-
listIterator
public ListIterator<E> listIterator(int index) リスト内の指定された位置で始まる、リスト内の要素を(適切な順序で)反復するリスト・イテレータを返します。 指定されたインデックスは、nextの最初の呼出しによって返される最初の要素を示します。previousの最初の呼出しは、指定されたインデックスから1を引いたインデックスを持つ要素を返します。- 定義:
listIterator、インタフェースList<E>- 実装要件:
- この実装は、
ListIteratorインタフェースの簡単な実装を返します。ListIteratorインタフェースは、iterator()メソッドによって返されるIteratorインタフェースの実装を拡張するものです。ListIteratorの実装は、基になるリストのget(int)、set(int, E)、add(int, E)、およびremove(int)の各メソッドに依存します。この実装で返されるリスト・イテレータは、リストの
remove(int)、set(int, E)、およびadd(int, E)メソッドがオーバーライドされないかぎり、remove、set、およびaddメソッドに応答してUnsupportedOperationExceptionをスローします。この実装は、(protected)
modCountフィールドの仕様で説明されているように、同時変更を前にして実行時の例外をスローすることもあります。 - パラメータ:
index- リスト・イテレータから(next呼出しによって)返される最初の要素のインデックス- 戻り値:
- リスト内の指定された位置で始まる、リスト内の要素を(適切な順序で)反復するリスト・イテレータ
- スロー:
IndexOutOfBoundsException- インデックスが範囲外の場合(index < 0||index> size())
-
subList
このリストの、指定されたfromIndex(これを含む)からtoIndex(これを含まない)までの部分のビューを返します。fromIndexとtoIndexが等しい場合は、空のリストが返されます。 返されるリストはこのリストに連動しているため、返されるリスト内での非構造的な変更はこのリストに反映され、このリスト内での変更は返されるリストに反映されます。 返されるリストは、このリストによってサポートされている、任意のリスト・オペレーションをすべてサポートします。このメソッドでは、配列に一般的に見られるような、明示的な範囲操作は必要ありません。 リストを予期する操作は、リスト全体ではなくsubListビューを渡すことで範囲操作として使用できます。 たとえば、次のイディオムは、ある範囲の要素をリストから削除します。
list.subList(from, to).clear();indexOfおよびlastIndexOfにも同様のidiomsを構成でき、CollectionsクラスのすべてのアルゴリズムをsubListに適用できます。バッキング・リスト(すなわち、このリスト)の構造が、返されたリストを経由せずに変更された場合、このメソッドで返されるリストのセマンティックスは定義されていません。 (構造の変更とは、リストのサイズが変わるような変更や、進行中のイテレーションが不正な結果に終わるような変更のことです。)
- 定義:
subList、インタフェースList<E>- 実装要件:
- この実装は、
AbstractListをサブクラス化するリストを返します。 サブクラスは、プライベート・フィールドにsubList (生涯にわたって変化する可能性がある)のサイズと、バッキング・リストに必要なmodCount値を格納します。 サブクラスにはバリアントが2つあり、そのうちの1つにはRandomAccessが実装されています。 リストがRandomAccessを実装すると、返されたリストはRandomAccessを実装するサブクラスのインスタンスになります。サブクラスの
set(int, E)、get(int)、add(int, E)、remove(int)、addAll(int, Collection)、およびremoveRange(int, int)の各メソッドは、インデックスの境界を調べ、オフセットに合わせて調整したあとで、バッキング抽象リストの対応するメソッドにすべて委譲します。addAll(Collection c)メソッドは、単にaddAll(size, c)を返すだけです。listIterator(int)メソッドは、バッキング・リストのリスト・イテレータへの「ラッパー・オブジェクト」を返します。この「ラッパー・オブジェクト」は、バッキング・リストの対応するメソッドで作成されます。iteratorメソッドはlistIterator()を返すだけであり、同様に、sizeメソッドはサブクラスのsizeフィールドを返すだけです。すべてのメソッドは、最初に、バッキング・リストの実際の
modCountがその要求された値に等しいかを調べ、そうでない場合はConcurrentModificationExceptionをスローします。 - パラメータ:
fromIndex- subListの下端点(これを含む)toIndex- subListの上端点(これを含まない)- 戻り値:
- このリスト内の指定された範囲のビュー
- スロー:
IndexOutOfBoundsException- 端点のインデックス値が範囲外の場合(fromIndex < 0||toIndex> size)IllegalArgumentException- 端点のインデックスの順番が正しくない場合(fromIndex> toIndex)
-
equals
public boolean equals(Object o) 指定されたオブジェクトがこのリストと等しいかどうかを比較します。 指定されたオブジェクトもリストであり、サイズが同じで、2つのリストの対応する要素がすべて等しい場合にだけtrueを返します。(e1==null ? e2==null : e1.equals(e2))の場合、2つの要素e1とe2は等しくなります。 つまり2つのリストは、同じ要素が同じ順序で含まれている場合に等しいものとして定義されます。- 定義:
equals、インタフェースCollection<E>- 定義:
equals、インタフェースList<E>- オーバーライド:
equals、クラスObject- 実装要件:
- この実装は、最初に、指定されたオブジェクトがこのリストであるかどうかを調べます。 このリストである場合、実装は
trueを返します。そうでない場合は、指定されたオブジェクトがリストかどうかを調べます。 リストでなければfalseを返します。指定されたオブジェクトがリストの場合は、両方のリストの内容を次々調べて、要素の対応するペアを比較します。 比較の結果falseが返されることがあれば、このメソッドもfalseを返します。 どちらかのリストのイテレータの要素が先になくなった場合は、2つのリストの長さが等しくないのでfalseを返します。そうでない場合は、繰返しが完了した時点でtrueを返します。 - パラメータ:
o- このリストと等しいかどうかを比較するオブジェクト- 戻り値:
- 指定されたオブジェクトがこのリストと等しい場合は
true - 関連項目:
-
hashCode
public int hashCode()このリストのハッシュ・コード値を返します。- 定義:
hashCode、インタフェースCollection<E>- 定義:
hashCode、インタフェースList<E>- オーバーライド:
hashCode、クラスObject- 実装要件:
- この実装では、
List.hashCode()メソッドのドキュメントでリスト・ハッシュ関数を定義するのに使われているコードをそのまま使っています。 - 戻り値:
- このリストのハッシュ・コード値
- 関連項目:
-
removeRange
protected void removeRange(int fromIndex, int toIndex) fromIndex(これを含む)からtoIndex(これを含まない)の範囲のインデックスを持つすべての要素をこのリストから削除します。 後続の要素は左に移動します(インデックス値が減少)。 この呼出しにより、(toIndex - fromIndex)の要素数だけリストが短くなります。toIndex==fromIndexの場合、このオペレーションは何も行いません。このメソッドは、このリストおよびそのサブリストで
clearオペレーションによって呼び出されます。 このメソッドをオーバーライドしてリストの実装の特性を最大限に利用するようにすると、このリストおよびそのサブリストに対するclearオペレーションの性能がかなり向上します。- 実装要件:
- この実装は、
fromIndexの前に位置するリスト・イテレータを取得し、範囲全体が削除されるまでListIterator.nextとListIterator.removeをこの順序で繰返し呼び出します。 ノート:ListIterator.removeが1次時間を必要とする場合、この実装では2次時間が必要です。 - パラメータ:
fromIndex- 削除する最初の要素のインデックスtoIndex- 削除する最後の要素の直後のインデックス
-