- 型パラメータ:
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
のプリミティブ特化に使用するベース・タイプ。 特殊化されたサブタイプが、int
、long
および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.tripwire
がtrue
に設定されている場合、プリミティブ・サブタイプ特殊化に対する操作時にプリミティブ値のボクシングが発生すると、診断警告が報告されます。 - 導入されたバージョン:
- 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である場合
-