クラス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
- 関連項目:
-
フィールドのサマリー
-
コンストラクタのサマリー
コンストラクタ -
メソッドのサマリー
修飾子と型メソッド説明voidこのリスト内の指定された位置に、指定された要素を挿入します(オプションの操作)。booleanaddAll(int index, Collection<? extends E> c) 指定されたコレクション内のすべての要素を、このリストの指定された位置に挿入します(オプションの操作)。get(int index) このリスト内の指定された位置にある要素を返します。iterator()このリスト内の要素を(適切な順序で)反復処理するイテレータを返します。abstract ListIterator<E> listIterator(int index) このリスト内の要素を(適切な順序で)反復するリスト・イテレータを返します。remove(int index) このリスト内の指定された位置にある要素を削除します(オプションの操作)。このリスト内の指定された位置にある要素を、指定された要素に置き換えます(オプションの操作)。クラスで宣言されたメソッド AbstractList
add, clear, equals, hashCode, indexOf, lastIndexOf, listIterator, removeRange, subList修飾子と型メソッド説明boolean指定された要素をこのリストの最後に追加します(オプションの操作)。voidclear()すべての要素をこのリストから削除します(オプションの操作)。boolean指定されたオブジェクトがこのリストと等しいかどうかを比較します。inthashCode()このリストのハッシュ・コード値を返します。int指定された要素がこのリスト内で最初に検出された位置のインデックスを返します。指定された要素がこのリストにない場合は -1を返します。int指定された要素がこのリスト内で最後に検出された位置のインデックスを返します。指定された要素がこのリストにない場合は -1を返します。このリスト内の要素を(適切な順序で)反復するリスト・イテレータを返します。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) このリスト内のすべての要素を適切な順序で(最初の要素から最後の要素へ)含んでいる配列を返します。返される配列の実行時の型は、指定された配列の型になります。
-
コンストラクタの詳細
-
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())
-