- すべての実装されたインタフェース:
- Spliterator<Long>,- Spliterator.OfLong,- Spliterator.OfPrimitive<Long,LongConsumer,Spliterator.OfLong>
- 含まれているクラス:
- Spliterators
public abstract static class Spliterators.AbstractLongSpliterator extends Object implements Spliterator.OfLong
trySplitを実装する抽象Spliterator.OfLongです。
 spliteratorを実装するには、拡張クラスはtryAdvanceを実装するだけでよい。 拡張クラスは、よりパフォーマンスの高い実装を提供できる場合は、forEachRemainingをオーバーライドする必要があります。 
- APIのノート:
- バランスの取れた並列計算が可能になるように要素を効率よく分割することが不可能または困難な場合に、このクラスを利用してスプリッテレータを作成できます。
 制限付きの並列処理を許可するもう1つの方法として、このクラスを使用するかわりに、イテレータからスプリッテレータを作成することもできます( Spliterators.spliterator(java.util.PrimitiveIterator.OfLong, long, int)を参照)。 状況によっては、このクラスを拡張するよりもイテレータを使用する方が簡単または好都合な場合があります。 たとえば、使用可能なイテレータがすでにある場合、このクラスを拡張する必要はありません。
- 導入されたバージョン:
- 1.8
- 関連項目:
- Spliterators.spliterator(java.util.PrimitiveIterator.OfLong, long, int)
- 
ネストされたクラスのサマリーインタフェース java.util.Spliteratorで宣言されたネストされたクラス/インタフェースSpliterator.OfDouble, Spliterator.OfInt, Spliterator.OfLong, Spliterator.OfPrimitive<T,T_CONS,T_SPLITR extends Spliterator.OfPrimitive<T,T_CONS,T_SPLITR>>
- 
フィールドのサマリーインタフェース java.util.Spliteratorで宣言されたフィールドCONCURRENT, DISTINCT, IMMUTABLE, NONNULL, ORDERED, SIZED, SORTED, SUBSIZED
- 
コンストラクタのサマリーコンストラクタ 修飾子 コンストラクタ 説明 protectedAbstractLongSpliterator(long est, int additionalCharacteristics)指定された推定サイズおよび特性を報告するスプリッテレータを作成します。
- 
メソッドのサマリー修飾子と型 メソッド 説明 intcharacteristics()このSpliteratorおよびその要素の特性のセットを返します。longestimateSize()Spliterator.forEachRemaining(java.util.function.Consumer<? super T>)トラバーサルで検出される要素の推定数の推定を返します。無限、不明、または負荷が高すぎて計算できない場合は、Long.MAX_VALUEを返します。Spliterator.OfLongtrySplit()このspliteratorをパーティション化できる場合に、要素に適用されるSpliteratorを返します。このメソッドから戻ると同時に、それらの要素にはこのSpliteratorが適用されなくなります。
- 
コンストラクタの詳細- 
AbstractLongSpliteratorprotected AbstractLongSpliterator(long est, int additionalCharacteristics)指定された推定サイズおよび特性を報告するスプリッテレータを作成します。- パラメータ:
- est- 既知の場合はこのスプリッテレータの推定サイズ。そうでない場合は- Long.MAX_VALUE。
- additionalCharacteristics- このスプリッテレータのソースまたは要素の特性。- SIZEDを報告する場合、このスプリッテレータは- SUBSIZEDも追加で報告します。
 
 
- 
- 
メソッドの詳細- 
trySplitpublic Spliterator.OfLong trySplit()このspliteratorをパーティション化できる場合に、要素に適用されるSpliteratorを返します。このメソッドから戻ると同時に、それらの要素にはこのSpliteratorが適用されなくなります。このスプリッテレータが Spliterator.ORDEREDである場合、返されるスプリッテレータは要素の厳密な接頭辞をカバーする必要があります。このスプリッテレータが無限の要素数をカバーする場合を除き、繰り返し trySplit()を呼び出すと、最終的にはnullが返されるはずです。 null以外が返されたときは次のようになります。- 分割前にestimateSize()で報告される値は、分割後のこのスプリッテレータおよび返されたスプリッテレータのestimateSize()と等しいかそれより大きくなければなりません。さらに、
- このスプリッテレータがSUBSIZEDである場合、分割前のこのスプリッテレータのestimateSize()は、分割後のこのスプリッテレータおよび返されたスプリッテレータのestimateSize()の合計と等しくなければなりません。
 このメソッドはなんらかの理由で nullを返す場合があります(空であるため、トラバース開始後に分割できないため、データ構造の制約のため、効率上の考慮事項のためなど)。 この実装では、制限付きの並列処理が許可されます。- 定義:
- インタフェースSpliterator<Long>のtrySplit
- 戻り値:
- 要素の一部分に適用されるSpliterator。このスプリッテレータを分割できない場合はnull
 
- 分割前に
- 
estimateSizepublic long estimateSize()Spliterator.forEachRemaining(java.util.function.Consumer<? super T>)トラバーサルで検出される要素の推定数の推定を返します。無限、不明、または負荷が高すぎて計算できない場合は、Long.MAX_VALUEを返します。このスプリッテレータが Spliterator.SIZEDであり、まだ部分的にトラバースまたは分割されていない場合、あるいは、このスプリッテレータがSpliterator.SUBSIZEDであり、まだ部分的にトラバースされていない場合、この推定値は完全なトラバースで検出される要素数の正確なカウントでなければなりません。 それ以外の場合、この推定値は任意の不正確な値でかまいませんが、Spliterator.trySplit()の呼出しにわたって、指定されたとおりに減少する必要があります。- 定義:
- インタフェースSpliterator<Long>のestimateSize
- 実装要件:
- この実装は、作成時に報告された推定サイズを返します。また、推定サイズが既知の場合は、分割時にサイズを減らします。
- 戻り値:
- 推定サイズ。無限大または不明の場合、あるいはコストが高すぎて計算できない場合はLong.MAX_VALUE。
 
- 
characteristicspublic int characteristics()このSpliteratorおよびその要素の特性のセットを返します。 結果は、Spliterator.ORDERED、Spliterator.DISTINCT、Spliterator.SORTED、Spliterator.SIZED、Spliterator.NONNULL、Spliterator.IMMUTABLE、Spliterator.CONCURRENT、Spliterator.SUBSIZEDの値の論理和で表されます。trySplitの呼出しの前または呼出しと呼出しの間に、1つのスプリッテレータに対して繰り返しcharacteristics()を呼び出すと、常に同じ結果が返されるはずです。スプリッテレータが一貫性のない特性セット(1つの呼出しから返されたものか、複数の呼出しから返されたもの)を報告する場合、このスプリッテレータを使用した計算については何も保証できません。 - 定義:
- インタフェースSpliterator<Long>のcharacteristics
- 実装要件:
- この実装は、作成時に報告された特性を返します。
- 戻り値:
- 特性の表現
 
 
-