-
- 既知のすべてのサブインタフェース:
NamingEnumeration<T>
- 既知のすべての実装クラス:
StringTokenizer
public interface Enumeration<E>Enumerationインタフェースを実装するオブジェクトは、一連の要素を1回に1つずつ生成します。nextElementメソッドを連続して呼び出すことによって、連続するそれらの要素が返されます。たとえば、
Vector<E>vのすべての要素を出力するには、次のようにします。for (Enumeration<E> e = v.elements(); e.hasMoreElements();) System.out.println(e.nextElement());メソッドは、ベクトルの要素、ハッシュ表のキー、およびハッシュ表の値を列挙するためのものです。 さらに、列挙は、入力ストリームを
SequenceInputStreamに指定するためにも使用されます。- APIのノート:
- このインタフェースの機能は、
Iteratorインタフェースによって複製されます。 また、Iteratorでは、オプションの削除操作が追加され、メソッド名が短くなります。 新しい実装では、EnumerationよりもIteratorの使用を検討する必要があります。asIterator()メソッドを使用して、EnumerationをIteratorに適応させることができます。 - 導入されたバージョン:
- 1.0
- 関連項目:
Iterator,SequenceInputStream,nextElement(),Hashtable,Hashtable.elements(),Hashtable.keys(),Vector,Vector.elements()
-
-
メソッドのサマリー
すべてのメソッド インスタンス・メソッド 抽象メソッド デフォルト・メソッド 修飾子と型 メソッド 説明 default Iterator<E>asIterator()この列挙の対象となる残りの要素をトラバースするIteratorを返します。booleanhasMoreElements()列挙にさらに要素があるかどうかを判定します。EnextElement()列挙に1つ以上の要素が残っている場合は、次の要素を返します。
-
-
-
メソッドの詳細
-
hasMoreElements
boolean hasMoreElements()
列挙にさらに要素があるかどうかを判定します。- 戻り値:
- 列挙オブジェクトに1つ以上の要素が残っている場合は
true、そうでない場合はfalse。
-
nextElement
E nextElement()
列挙に1つ以上の要素が残っている場合は、次の要素を返します。- 戻り値:
- 列挙の次の要素。
- 例外:
NoSuchElementException- 要素がそれ以上ない場合。
-
asIterator
default Iterator<E> asIterator()
この列挙の対象となる残りの要素をトラバースするIteratorを返します。asIteratorのコール後にこの列挙でメソッドがコールされた場合、トラバーサルは未定義です。- APIのノート:
- このメソッドは、
Enumerationインスタンスを生成するコードを、Iteratorインスタンスを使用するコードに適応させるのに役立ちます。 たとえば、JarFile.entries()メソッドはEnumeration<JarEntry>を返します。 これはIteratorに変換でき、forEachRemaining()メソッドを使用できます。
(エントリのJarFile jarFile = ... ; jarFile.entries().asIterator().forEachRemaining(entry -> { ... });Streamを返すJarFile.stream()メソッドもあるため、場合によってはより便利な場合があります。) - 実装要件:
- デフォルトの実装では、
hasNextメソッドがこの列挙のhasMoreElementsメソッドをコールするIteratorが戻されます。このメソッドでは、nextメソッドがこの列挙のnextElementメソッドをコールし、removeメソッドがUnsupportedOperationExceptionをスローします。 - 戻り値:
- この列挙の残りの要素を表すイテレータ
- 導入されたバージョン:
- 9
-
-