|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
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, Object element)、set(int index, Object element)、add(int index, Object 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 がこのリストでサポートされない場合
NullPointerException
- このリストが null 要素を許容せず、しかも c
の要素の 1 つが null である場合
ClassCastException
- 指定された要素のクラスがリストに追加できなかった場合
IllegalArgumentException
- この要素の特性がリストに追加できなかった場合
IndexOutOfBoundsException
- インデックスが範囲外の場合 (index < 0 || index > size())
IllegalArgumentException
- fromIndex > toIndexpublic void add(int index, E element)
この実装は、listIterator(index) を使って、インデックスが付けられた要素を指すリスト反復子を最初に取得します。次に、ListIterator.add を使用して、指定された要素を挿入します。
この実装は、リスト反復子が add オペレーションを実装しない場合に UnsupportedOperationException をスローします。
List<E>
内の add
AbstractList<E>
内の add
index
- 指定された要素が挿入されるインデックスelement
- 挿入される要素
UnsupportedOperationException
- リストが add オペレーションをサポートしていない場合
NullPointerException
- このリストが null 要素を許容せず、しかも c
の要素の 1 つが null である場合
ClassCastException
- 指定された要素のクラスのために、リストに要素を追加できない場合
IllegalArgumentException
- この要素の一部の特性のために、リストに要素を追加できない場合
IndexOutOfBoundsException
- 指定されたインデックスが範囲外の場合 (index < 0 || index > size())public E remove(int index)
この実装は、listIterator(index) を使って、インデックスが付けられた要素を指すリスト反復子を最初に取得します。次に、ListIterator.remove を使用して、指定された要素を削除します。
この実装は、リスト反復子が remove オペレーションを実装しない場合に UnsupportedOperationException をスローします。
List<E>
内の remove
AbstractList<E>
内の remove
index
- List から削除する要素のインデックス
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 オペレーションをサポートしていない場合
NullPointerException
- このリストが null 要素を許容せず、しかも指定されたコレクションの要素の 1 つが null である場合
ClassCastException
- 指定された要素のクラスのために、リストに要素を追加できない場合
IllegalArgumentException
- この要素の一部の特性のために、リストに要素を追加できない場合
IndexOutOfBoundsException
- 指定されたインデックスが範囲外の場合 (index < 0 || index > size())
NullPointerException
- 指定されたコレクションが null である場合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
メソッドの呼び出しによってリスト反復子から返される最初の要素のインデックス
AbstractList.modCount
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。