Java ストリームを反転して減少する IntStream を生成する方法
ストリームの反転は、Java 8 ストリームを扱う場合の一般的な操作です。ここでは、任意のタイプのストリームを反転するための 2 つのアプローチを検討し、特に減少する IntStream を生成するという課題に対処します。
一般的なアプローチ: 任意のタイプのストリームを反転する
要素のタイプに関係なくストリームを反転するには、次の 2 つの手法を使用できます:
特定のアプローチ: 減少する IntStream を生成する
減少する IntStream を生成する特定の問題は、次の方法で対処できます。次のカスタム メソッド:
<code class="java">static IntStream revRange(int from, int to) { return IntStream.range(from, to) .map(i -> to - i + from - 1); }</code>
この手法により、ボックス化と並べ替え操作が回避され、より効率的なコードが得られます。
追加の考慮事項
前のこの回答のバージョンでは、逆の ArrayList を使用することをお勧めします。ただし、ArrayList の前に挿入するのは非効率であるため、代わりに ArrayDeque を使用するように更新され、効率的な前挿入をサポートします。
このアプローチの出力は List ではなく Deque ですが、簡単に反復したり、逆の順序でストリーミングしたりできます。
以上がJava で逆向きの IntStream を生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。