Java 8 では、Stream API はデータを操作する強力かつ効率的な方法を提供します。ただし、Java のすべてのコレクションを直接ストリームに変換できるわけではありません。このようなコレクションの 1 つは Iterable ですが、これには stream() メソッドがありません。
このギャップを埋めるために、Java 8 では StreamSupport.stream() メソッドによるソリューションが提供されています。このメソッドは Spliterator オブジェクトを入力として受け取り、そこからストリームを生成します。幸いなことに、Iterable には、対応する Spliterator を返す Spliterator() メソッドが用意されています。
これらのメソッドを使用すると、リストへの中間変換を必要とせずに、Iterable をシームレスにストリームに変換できます。次のコード スニペットは、これを実現する方法を示しています。
Iterable<T> iterable = getIterable(); Stream<T> stream = StreamSupport.stream(iterable.spliterator(), false);
ストリーム変数には、Stream API が提供する豊富な操作セットを使用して操作できるストリームが保持されます。このアプローチでは、新しいコレクションを作成するオーバーヘッドなしで、基礎となる Iterable を活用しながら、Java 8 Stream API の利点を提供します。
以上がJava 8 でイテラブルをストリームに変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。