モジュール 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
    • メソッドの詳細

      • forEachRemaining

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