言語

ICollection.IIterable.Spliterator メソッド

定義

このコレクション内の要素に対して 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 で追加されました。

Javaドキュメント。

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

適用対象