クラスAbstractSequentialList<E>
- 型パラメータ:
- E- このリスト内に存在する要素の型
- すべての実装されたインタフェース:
- Iterable<E>,- Collection<E>,- List<E>,- SequencedCollection<E>
- 直系の既知のサブクラス:
- LinkedList
Listインタフェースのスケルトン実装を提供します。 ランダム・アクセス・データ(配列など)の場合、このクラスよりもAbstractListを使用する必要があります。 
 このクラスは、リストのリスト・イテレータの上部に"ランダム・アクセス"メソッド(get(int index), set(int index, E element), add(int index, E element)およびremove(int index))を実装するという意味でAbstractListクラスの反対です。
 リストを実装するには、プログラマは、このクラスを拡張して、listIteratorおよびsizeメソッドの実装を提供するだけで済みます。 変更不可能なリストの場合、プログラマはリスト・イテレータのhasNext, next, hasPrevious, previousおよびindexメソッドのみを実装する必要があります。 
 変更可能なリストの場合、プログラマは、リスト・イテレータのsetメソッドをさらに実装する必要があります。 可変サイズ・リストの場合、プログラマは、リスト・イテレータのremoveおよびaddメソッドをさらに実装する必要があります。 
 プログラマは、通常、Collectionインタフェース仕様の推奨事項に従って、void (引数なし)およびcollectionコンストラクタを指定する必要があります。
このクラスは、Java Collections Frameworkのメンバーです。
- 導入されたバージョン:
- 1.2
- 関連項目:
- 
フィールドのサマリークラスjava.util.AbstractListで宣言されたフィールドmodCount
- 
コンストラクタのサマリーコンストラクタ
- 
メソッドのサマリー修飾子と型メソッド説明voidこのリスト内の指定された位置に、指定された要素を挿入します(オプションの操作)。booleanaddAll(int index, Collection<? extends E> c) 指定されたコレクション内のすべての要素を、このリストの指定された位置に挿入します(オプションの操作)。get(int index) このリスト内の指定された位置にある要素を返します。iterator()このリスト内の要素を(適切な順序で)反復処理するイテレータを返します。abstract ListIterator<E> listIterator(int index) このリスト内の要素を(適切な順序で)反復するリスト・イテレータを返します。remove(int index) このリスト内の指定された位置にある要素を削除します(オプションの操作)。このリスト内の指定された位置にある要素を、指定された要素に置き換えます(オプションの操作)。クラスjava.util.AbstractListで宣言されたメソッドadd, clear, equals, hashCode, indexOf, lastIndexOf, listIterator, removeRange, subListクラスjava.util.AbstractCollectionで宣言されたメソッドaddAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArray, toStringインタフェースjava.util.Collectionで宣言されたメソッドparallelStream, removeIf, stream, toArrayインタフェースjava.util.Listで宣言されたメソッドaddAll, addFirst, addLast, contains, containsAll, getFirst, getLast, isEmpty, remove, removeAll, removeFirst, removeLast, replaceAll, retainAll, reversed, size, sort, spliterator, toArray, toArray
- 
コンストラクタの詳細- 
AbstractSequentialListprotected AbstractSequentialList()唯一のコンストラクタです。 (サブクラスのコンストラクタによる呼出し用で、通常は暗黙的に呼び出されます。)
 
- 
- 
メソッドの詳細- 
getpublic E get(int index) このリスト内の指定された位置にある要素を返します。この実装では、最初に、索引付き要素(with listIterator(index))を指すリスト・イテレータを取得します。 次に、ListIterator.nextを使用して要素を取得し、それを返します。- 定義:
- get、インタフェース- List<E>
- 定義:
- get、クラス- AbstractList<E>
- パラメータ:
- index- 返される要素のインデックス
- 戻り値:
- このリスト内の指定された位置にある要素
- 例外:
- IndexOutOfBoundsException- 索引が(- index < 0 || index >= size())の範囲外であるかどうか
 
- 
setこのリスト内の指定された位置にある要素を、指定された要素に置き換えます(オプションの操作)。この実装では、最初に、索引付き要素(with listIterator(index))を指すリスト・イテレータを取得します。 次に、ListIterator.nextを使用して現在の要素を取得し、ListIterator.setに置き換えます。リスト・イテレータが set操作を実装しない場合、この実装はUnsupportedOperationExceptionをスローすることに注意してください。- 定義:
- set、インタフェース- List<E>
- オーバーライド:
- set、クラス- AbstractList<E>
- パラメータ:
- index- 置換される要素のインデックス。
- element- 指定された位置に格納される要素。
- 戻り値:
- 指定された位置に以前あった要素。
- 例外:
- UnsupportedOperationException-- set操作がこのリストでサポートされていない場合
- ClassCastException- 指定された要素のクラスが原因で、このリストにその要素を追加できない場合
- NullPointerException- 指定された要素がnullで、このリストがnull要素を許可しない場合
- IllegalArgumentException- 指定された要素のあるプロパティが原因で、このリストにその要素を追加できない場合
- IndexOutOfBoundsException- 索引が(- index < 0 || index >= size())の範囲外であるかどうか
 
- 
addpublic void add(int index, E element) このリスト内の指定された位置に、指定された要素を挿入します(オプションの操作)。 その位置とそれ以降に要素があればそれらを右に移動させ、各要素のインデックスに1を加えます。この実装では、最初に、索引付き要素(with listIterator(index))を指すリスト・イテレータを取得します。 次に、指定された要素をListIterator.addで挿入します。リスト・イテレータが add操作を実装しない場合、この実装はUnsupportedOperationExceptionをスローすることに注意してください。- 定義:
- add、インタフェース- List<E>
- オーバーライド:
- add、クラス- AbstractList<E>
- パラメータ:
- index- 指定の要素が挿入される位置のインデックス
- element- 挿入される要素
- 例外:
- UnsupportedOperationException-- addオペレーションがこのリストでサポートされない場合
- ClassCastException- 指定された要素のクラスが原因で、このリストにその要素を追加できない場合
- NullPointerException- 指定された要素がnullで、このリストがnull要素を許可しない場合
- IllegalArgumentException- 指定された要素のあるプロパティが原因で、このリストにその要素を追加できない場合
- IndexOutOfBoundsException- インデックスが範囲外の場合(- index < 0||index> size())
 
- 
removepublic E remove(int index) このリスト内の指定された位置にある要素を削除します(オプションの操作)。 後続の要素を左に移動します(インデックスから1を減算)。 リストから削除された要素が返されます。この実装では、最初に、索引付き要素(with listIterator(index))を指すリスト・イテレータを取得します。 次に、ListIterator.removeを使用して要素を削除します。リスト・イテレータが remove操作を実装しない場合、この実装はUnsupportedOperationExceptionをスローすることに注意してください。- 定義:
- remove、インタフェース- List<E>
- オーバーライド:
- remove、クラス- AbstractList<E>
- パラメータ:
- index- 削除される要素のインデックス
- 戻り値:
- 指定された位置に以前あった要素。
- 例外:
- UnsupportedOperationException-- remove操作がこのリストでサポートされていない場合
- IndexOutOfBoundsException- 索引が(- index < 0 || index >= size())の範囲外であるかどうか
 
- 
addAllpublic boolean addAll(int index, Collection<? extends E> c) 指定されたコレクション内のすべての要素を、このリストの指定された位置に挿入します(オプションの操作)。 その位置とそれ以降に要素がある場合は、それらを右に移動して、各要素のインデックスに1を加えます。 新しい要素は、指定されたコレクションのイテレータによって返される順序でこのリストに挿入されます。 オペレーションの進行中に、指定されたコレクションが変更された場合の、このオペレーションの動作は定義されていません。 (これは、指定されたコレクションがこのリストで、しかも空ではない場合に起こります。)この実装では、指定されたコレクションに対するイテレータと、索引付き要素(with listIterator(index))を指すリスト・イテレータを取得します。 次に、ListIterator.addに続けてListIterator.next(追加された要素をスキップ)を指定して、イテレータから取得した要素を一度に1つずつこのリストに挿入して、指定したコレクションを反復処理します。listIteratorメソッドによって返されるリスト・イテレータがadd操作を実装しない場合、この実装はUnsupportedOperationExceptionをスローすることに注意してください。- 定義:
- addAll、インタフェース- List<E>
- オーバーライド:
- addAll、クラス- AbstractList<E>
- パラメータ:
- index- 指定されたコレクションの最初の要素を挿入する位置のインデックス。
- c- このリストに追加される要素を含むコレクション。
- 戻り値:
- 呼出しの結果としてこのリストが変更された場合はtrue
- 例外:
- UnsupportedOperationException-- addAll操作がこのリストでサポートされていない場合
- ClassCastException- 指定されたコレクションの要素のクラスが原因で、このリストにその要素を追加できない場合
- NullPointerException- 指定されたコレクションに1つ以上のnull要素が含まれており、このリストがnull要素を許可しない場合、または指定されたコレクションがnullの場合
- IllegalArgumentException- 指定されたコレクションの要素のあるプロパティが原因で、このリストにその要素を追加できない場合
- IndexOutOfBoundsException- インデックスが範囲外の場合(- index < 0||index> size())
 
- 
iterator
- 
listIteratorpublic abstract ListIterator<E> listIterator(int index) このリスト内の要素を(適切な順序で)反復するリスト・イテレータを返します。- 定義:
- listIterator、インタフェース- List<E>
- オーバーライド:
- listIterator、クラス- AbstractList<E>
- パラメータ:
- index- リスト・イテレータから(- nextメソッド呼出しによって)返される最初の要素のインデックス
- 戻り値:
- このリスト内の要素を(適切な順序で)反復するリスト・イテレータ
- 例外:
- IndexOutOfBoundsException- インデックスが範囲外の場合(- index < 0||index> size())
 
 
-