ICollection.IIterable.Spliterator メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
このコレクション内の要素に対して Spliterator を作成します。
[Android.Runtime.Register("spliterator", "()Ljava/util/Spliterator;", "GetSpliteratorHandler:Java.Util.ICollection, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", ApiSince=24)]
override sealed Java.Util.ISpliterator IIterable.Spliterator();
[<Android.Runtime.Register("spliterator", "()Ljava/util/Spliterator;", "GetSpliteratorHandler:Java.Util.ICollection, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", ApiSince=24)>]
abstract member Java.Lang.IIterable.Spliterator : unit -> Java.Util.ISpliterator
override this.Java.Lang.IIterable.Spliterator : unit -> Java.Util.ISpliterator
返品
このコレクション内の要素に対するSpliterator
実装
- 属性
注釈
このコレクション内の要素に対して Spliterator を作成します。
実装では、分割子によって報告される特性値を文書化する必要があります。 分割子が Spliterator#SIZED 報告し、このコレクションに要素が含まれていない場合、このような特性値を報告する必要はありません。
既定の実装は、より効率的な分割子を返すことができるサブクラスによってオーバーライドする必要があります。
#stream()メソッドと#parallelStream()メソッドの期待される怠け動作を維持するには、分割子にIMMUTABLEまたはCONCURRENTの特性を持つか、<em>late-binding</em>する必要があります。 これらのいずれかが実用的でない場合、オーバーライドするクラスは、バインドと構造的干渉に関する分割子の文書化されたポリシーを記述し、次のように、分割子のSupplierを使用してストリームを作成する#stream()メソッドと#parallelStream()メソッドをオーバーライドする必要があります。
{@code
Stream<E> s = StreamSupport.stream(() -> spliterator(), spliteratorCharacteristics)
}
これらの要件により、 #stream() メソッドと #parallelStream() メソッドによって生成されたストリームには、ターミナル ストリーム操作の開始時点でのコレクションの内容が反映されます。
1.8 で追加されました。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。