クラス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
-
コンストラクタの詳細
-
AbstractSequentialList
protected AbstractSequentialList()唯一のコンストラクタです。 (サブクラスのコンストラクタによる呼出し用で、通常は暗黙的に呼び出されます。)
-
-
メソッドの詳細
-
get
public 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())の範囲外であるかどうか
-
add
public 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())
-
remove
public 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())の範囲外であるかどうか
-
addAll
public 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
-
listIterator
public abstract ListIterator<E> listIterator(int index) このリスト内の要 を(適切な 序で)反復するリスト・イテレータを返します。- 定義:
listIterator、インタフェースList<E>- オーバーライド:
listIterator、クラスAbstractList<E>- パラメータ:
index- リスト・イテレータから(nextメソッド呼出しによって)返される最初の要 のインデックス- 戻り値:
- このリスト内の要 を(適切な 序で)反復するリスト・イテレータ
- スロー:
IndexOutOfBoundsException- インデックスが範囲外の 合(index < 0||index> size())
-