- java.lang.Object
- 
- java.util.AbstractCollection<E>
- 
- java.util.AbstractList<E>
- 
- java.util.AbstractSequentialList<E>
 
 
 
- 
- すべての実装されたインタフェース:
- Iterable<E>,- Collection<E>,- List<E>
 - 直系の既知のサブクラス:
- LinkedList
 
 public abstract class AbstractSequentialList<E> extends AbstractList<E> このクラスは、Listインタフェースのスケルトン実装を提供し、リンク・リストのような順次アクセスデータ・ストアに連動するこのインタフェースを実装するのに必要な作業量を最小限に抑えます。 配列のようなランダム・アクセス・データを扱うには、このクラスではなくAbstractListを使用してください。このクラスは AbstractListクラスと対になるものです。AbstractListはランダム・アクセス用のメソッドであるget(int index)、set(int index, E element)、add(int index, E element)、およびremove(int index)をリストのリスト・イテレータの上位に実装しますが、このクラスでは逆になります。リストを実装するには、このクラスを拡張して、 listIteratorおよびsizeメソッドの実装を提供します。 変更不可能なリストを実装するには、リスト・イテレータのhasNext、next、hasPrevious、previous、およびindexメソッドを実装します。変更可能なリストを実装するには、リスト・イテレータの setメソッドも実装してください。 可変サイズのリストを実装するには、リスト・イテレータのremoveメソッドおよびaddメソッドも実装してください。Collectionインタフェースの仕様で推奨されているように、通常は、引数なしのvoidコンストラクタ、および引数にコレクションをとるコンストラクタを提供してください。このクラスは、Java Collections Frameworkのメンバーです。 - 導入されたバージョン:
- 1.2
- 関連項目:
- Collection,- List,- AbstractList,- AbstractCollection
 
- 
- 
フィールドのサマリー- 
クラス java.util.AbstractListで宣言されたフィールドmodCount
 
- 
 - 
コンストラクタのサマリーコンストラクタ 修飾子 コンストラクタ 説明 protectedAbstractSequentialList()唯一のコンストラクタです。
 - 
メソッドのサマリー修飾子と型 メソッド 説明 voidadd(int index, E element)このリスト内の指定された位置に、指定された要素を挿入します(オプションの操作)。booleanaddAll(int index, Collection<? extends E> c)指定されたコレクション内のすべての要素を、このリストの指定された位置に挿入します(オプションの操作)。Eget(int index)このリスト内の指定された位置にある要素を返します。Iterator<E>iterator()このリスト内の要素を(適切な順序で)反復処理するイテレータを返します。abstract ListIterator<E>listIterator(int index)このリスト内の要素を(適切な順序で)反復するリスト・イテレータを返します。Eremove(int index)このリスト内の指定された位置にある要素を削除します(オプションの操作)。Eset(int index, E element)このリスト内の指定された位置にある要素を、指定された要素に置き換えます(オプションの操作)。- 
クラス 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, contains, containsAll, isEmpty, remove, removeAll, replaceAll, retainAll, size, sort, spliterator, toArray, toArray
 
- 
 
- 
- 
- 
メソッドの詳細- 
getpublic E get(int index) このリスト内の指定された位置にある要素を返します。この実装は、 listIterator(index)を使って、インデックスが付けられた要素を指すリスト・イテレータを最初に取得します。 次に、ListIterator.nextを使用して要素を取得し、それを返します。- 定義:
- get、インタフェース:- List<E>
- 定義:
- get、クラス:- AbstractList<E>
- パラメータ:
- index- 返される要素のインデックス
- 戻り値:
- このリスト内の指定された位置にある要素
- 例外:
- IndexOutOfBoundsException- インデックスが範囲外の場合(- index < 0||index>= size())
 
 - 
setpublic E set(int index, E element) このリスト内の指定された位置にある要素を、指定された要素に置き換えます(オプションの操作)。この実装は、 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を加えます。この実装は、 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を減算)。 リストから削除された要素が返されます。この実装は、 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を加えます。 新しい要素は、指定されたコレクションのイテレータによって返される順序でこのリストに挿入されます。 オペレーションの進行中に、指定されたコレクションが変更された場合の、このオペレーションの動作は定義されていません。 (これは、指定されたコレクションがこのリストで、しかも空ではない場合に起こります。)この実装は、指定されたコレクションのイテレータを取得します。また、 listIterator(index)を使って、インデックスが付けられた要素を指す、このリストのリスト・イテレータを取得します。 そのあとで、指定されたコレクションを繰り返して調べて、イテレータから取得した要素をリストの適切な位置に1つずつ挿入します。挿入にはListIterator.addと、それに続けて、追加された要素をスキップするためにListIterator.nextを使用します。この実装は、 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())
 
 - 
iteratorpublic Iterator<E> iterator() このリスト内の要素を(適切な順序で)反復処理するイテレータを返します。この実装は、リストのリスト・イテレータを返すだけです。 
 - 
listIteratorpublic abstract ListIterator<E> listIterator(int index) このリスト内の要素を(適切な順序で)反復するリスト・イテレータを返します。- 定義:
- listIterator、インタフェース:- List<E>
- オーバーライド:
- listIterator、クラス:- AbstractList<E>
- パラメータ:
- index- リスト・イテレータから(- nextメソッド呼出しによって)返される最初の要素のインデックス
- 戻り値:
- このリスト内の要素を(適切な順序で)反復するリスト・イテレータ
- 例外:
- IndexOutOfBoundsException- インデックスが範囲外の場合(- index < 0||index> size())
 
 
- 
 
-