モジュール java.base
パッケージ java.util

インタフェースPrimitiveIterator<T,​T_CONS>

型パラメータ:
T - このPrimitiveIteratorで返される要素の型。 この型はプリミティブ型に対するラッパー型である必要があります(プリミティブint型に対するIntegerなど)。
T_CONS - プリミティブ・コンシューマの型。 この型はTに対するConsumerのプリミティブ特殊化である必要があります(Integerに対するIntConsumerなど)。
すべてのスーパー・インタフェース:
Iterator<T>
既知のすべてのサブインタフェース:
PrimitiveIterator.OfDouble, PrimitiveIterator.OfInt, PrimitiveIterator.OfLong

public interface PrimitiveIterator<T,​T_CONS>
extends Iterator<T>
Iteratorのプリミティブ特化に使用するベース・タイプ。 特殊化されたサブタイプが、intlongおよびdouble値のために提供されています。

Iterator.next()およびIterator.forEachRemaining(java.util.function.Consumer)の特殊化されたサブタイプ・デフォルト実装は、プリミティブ値を対応するラッパー・クラスのインスタンスにボクシングします。 このようなボクシングは、プリミティブ特殊化の使用時に得られるすべての利点を相殺する場合があります。 ボクシングを避けるには、対応するプリミティブ・ベース・メソッドを使用してください。 たとえば、PrimitiveIterator.OfInt.nextInt()PrimitiveIterator.OfInt.forEachRemaining(java.util.function.IntConsumer)を、PrimitiveIterator.OfInt.next()PrimitiveIterator.OfInt.forEachRemaining(java.util.function.Consumer)よりも優先して使用することをお薦めします。

ボクシング・ベース・メソッドnext()およびforEachRemaining()を使用したプリミティブ値の反復は、値がボクシング値に変換されて検出される順序に影響しません。

実装上のノート:
booleanシステム・プロパティorg.openjdk.java.util.stream.tripwiretrueに設定されている場合、プリミティブ・サブタイプ特殊化に対する操作時にプリミティブ値のボクシングが発生すると、診断警告が報告されます。
導入されたバージョン:
1.8
  • ネストされたクラスのサマリー

    ネストされたクラス
    修飾子と型 インタフェース 説明
    static interface  PrimitiveIterator.OfDouble
    double値に特化されたイテレータ。
    static interface  PrimitiveIterator.OfInt
    int値に特化されたイテレータ。
    static interface  PrimitiveIterator.OfLong
    long値に特化されたイテレータ。
  • メソッドのサマリー

    修飾子と型 メソッド 説明
    void forEachRemaining​(T_CONS action)
    すべての要素が処理されるかアクションから例外がスローされるまで、残りの各要素に対して指定されたアクションを実行します(反復時は要素が出現する順序で)。

    インタフェース java.util.Iteratorで宣言されたメソッド

    forEachRemaining, hasNext, next, remove
  • メソッドの詳細

    • forEachRemaining

      void forEachRemaining​(T_CONS action)
      すべての要素が処理されるかアクションから例外がスローされるまで、残りの各要素に対して指定されたアクションを実行します(反復時は要素が出現する順序で)。 アクションによってスローされたエラーまたは実行時例外は、呼出し側に中継されます。
      パラメータ:
      action - 各要素に対して実行されるアクション
      例外:
      NullPointerException - 指定されたアクションがnullである場合