|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object java.util.AbstractCollection<E> java.util.AbstractList<E> java.util.AbstractSequentialList<E>
public abstract class AbstractSequentialList<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 のメンバーです。
Collection
,
List
,
AbstractList
,
AbstractCollection
フィールドの概要 |
---|
クラス java.util.AbstractList から継承されたフィールド |
---|
modCount |
コンストラクタの概要 | |
---|---|
protected |
AbstractSequentialList()
唯一のコンストラクタです。 |
メソッドの概要 | |
---|---|
void |
add(int index,
E element)
リスト内の指定された位置に、指定された要素を挿入します (任意のオペレーション)。 |
boolean |
addAll(int index,
Collection<? extends E> c)
指定されたコレクション内のすべての要素を、リストの指定された位置に挿入します (任意のオペレーション)。 |
E |
get(int index)
リスト内の指定された位置にある要素を返します。 |
Iterator<E> |
iterator()
このリスト内の要素を適切な順序で繰り返し処理する反復子を返します。 |
abstract ListIterator<E> |
listIterator(int index)
このリスト内の要素を適切な順序で繰り返し処理するリスト反復子を返します。 |
E |
remove(int index)
リスト内の指定された位置にある要素を削除します (任意のオペレーション)。 |
E |
set(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, size, toArray, toArray, toString |
クラス java.lang.Object から継承されたメソッド |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
インタフェース java.util.List から継承されたメソッド |
---|
addAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, size, toArray, toArray |
コンストラクタの詳細 |
---|
protected AbstractSequentialList()
メソッドの詳細 |
---|
public E get(int index)
この実装は、listIterator(index) を使って、インデックスが付けられた要素を指すリスト反復子を最初に取得します。次に、ListIterator.next を使用して要素を取得し、それを返します。
List<E>
内の get
AbstractList<E>
内の get
index
- 返される要素のインデックス
IndexOutOfBoundsException
- インデックスが範囲外の場合 (index < 0 || index > size())public E set(int index, E element)
この実装は、listIterator(index) を使って、インデックスが付けられた要素を指すリスト反復子を最初に取得します。次に、ListIterator.next を使用して現在の要素を取得し、それを ListIterator.set で置き換えます。
この実装は、リスト反復子が set オペレーションを実装しない場合に UnsupportedOperationException をスローします。
List<E>
内の set
AbstractList<E>
内の set
index
- 置換される要素のインデックスelement
- 指定された位置に格納される要素
UnsupportedOperationException
- set オペレーションがこのリストでサポートされない場合
ClassCastException
- 指定された要素のクラスが原因で、このリストにその要素を追加できない場合
NullPointerException
- 指定された要素が null で、このリストが null 要素を許容しない場合
IllegalArgumentException
- 指定された要素のあるプロパティーが原因で、このリストにその要素を追加できない場合
IndexOutOfBoundsException
- インデックスが範囲外の場合 (index < 0 || index > size())public void add(int index, E element)
この実装は、listIterator(index) を使って、インデックスが付けられた要素を指すリスト反復子を最初に取得します。次に、ListIterator.add を使用して、指定された要素を挿入します。
この実装は、リスト反復子が add オペレーションを実装しない場合に UnsupportedOperationException をスローします。
List<E>
内の add
AbstractList<E>
内の add
index
- 指定の要素が挿入される位置のインデックスelement
- 挿入される要素
UnsupportedOperationException
- add オペレーションがこのリストでサポートされない場合
ClassCastException
- 指定された要素のクラスが原因で、このリストにその要素を追加できない場合
NullPointerException
- 指定された要素が null で、このリストが null 要素を許容しない場合
IllegalArgumentException
- 指定された要素のあるプロパティーが原因で、このリストにその要素を追加できない場合
IndexOutOfBoundsException
- インデックスが範囲外の場合 (index < 0 || index > size())public E remove(int index)
この実装は、listIterator(index) を使って、インデックスが付けられた要素を指すリスト反復子を最初に取得します。次に、ListIterator.remove を使用して、指定された要素を削除します。
この実装は、リスト反復子が remove オペレーションを実装しない場合に UnsupportedOperationException をスローします。
List<E>
内の remove
AbstractList<E>
内の remove
index
- 削除される要素のインデックス
UnsupportedOperationException
- remove オペレーションがこのリストでサポートされない場合
IndexOutOfBoundsException
- インデックスが範囲外の場合 (index < 0 || index > size())public boolean addAll(int index, Collection<? extends E> c)
この実装は、指定されたコレクションの反復子を取得します。 また、listIterator(index) を使って、インデックスが付けられた要素を指す、このリストのリスト反復子を取得します。そのあとで、指定されたコレクションを繰り返して調べて、反復子から取得した要素をリストの適切な位置に 1 つずつ挿入します。挿入には ListIterator.add と、それに続けて、追加された要素をスキップするために ListIterator.next を使用します。
この実装は、listIterator メソッドが返したリスト反復子が add オペレーションを実装しない場合に UnsupportedOperationException をスローします。
List<E>
内の addAll
AbstractList<E>
内の addAll
index
- 指定されたコレクションの最初の要素を挿入する位置のインデックスc
- 要素がリストに追加されるコレクション
UnsupportedOperationException
- addAll オペレーションがこのリストでサポートされない場合
ClassCastException
- 指定されたコレクションのある要素のクラスが原因で、このリストにそのコレクションを追加できない場合
NullPointerException
- 指定されたコレクションに 1 つ以上の null 要素が含まれており、このリストが null 要素を許可しない場合、または指定されたコレクションが null の場合
IllegalArgumentException
- 指定されたコレクションのある要素のある特性が原因で、このリストにそのコレクションを追加できない場合
IndexOutOfBoundsException
- インデックスが範囲外の場合 (index < 0 || index > size())public Iterator<E> iterator()
この実装は、リストのリスト反復子を返すだけです。
Iterable<E>
内の iterator
Collection<E>
内の iterator
List<E>
内の iterator
AbstractList<E>
内の iterator
AbstractList.modCount
public abstract ListIterator<E> listIterator(int index)
List<E>
内の listIterator
AbstractList<E>
内の listIterator
index
- next
メソッドの呼び出しによってリスト反復子から返される最初の要素のインデックス
IndexOutOfBoundsException
- インデックスが範囲外の場合 (index < 0 || index > size())AbstractList.modCount
|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。