Javaストリームでのピークの使用方法の詳細な説明

Java では、Stream はコレクション データを処理するための強力なツールです。データを操作および変換するための関数型プログラミング方法を提供します。ストリーム内のメソッドpeekは、ストリームの内容を変更せずにストリームの各要素に対して操作を実行できる非終端操作です。

peekメソッドの構文は次のとおりです。

Stream<T> peek(Consumer<? super T> action)

ここでaction、 は要素を受け取り、演算を実行する関数です。

peekこのメソッドの主な機能は、ストリームの各要素に対して、要素の値の出力、ログ記録、デバッグなどの操作を実行することです。これは通常、ストリームの内容を変更せずにストリームの中間状態をデバッグしたり観察したりするために使用されます。

peekこれを使用する簡単な例を次に示します。

List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);

List<Integer> doubledNumbers = numbers.stream()
    .peek(n -> System.out.println("Processing number: " + n))
    .map(n -> n * 2)
    .collect(Collectors.toList());

上の例では、整数のリストを作成しnumbers、ストリームを通じて各要素を処理します。stream の操作ではpeek、各数値の値を出力します。次に、map演算を使用して各数値を 2 で乗算し、結果を新しいリストに収集します。

上記のコードを実行すると、次の出力が表示されます。

Processing number: 1
Processing number: 2
Processing number: 3
Processing number: 4
Processing number: 5

メソッドを使用するとpeek、ストリーム内の各要素の処理を観察できます。これは、ストリームの中間状態をデバッグしたり理解したりするのに役立ちます。

peekこのメソッドは中間操作であり、ストリームの終了操作をトリガーしないことに注意してください。ストリームの内容を変更したり、最終結果を取得したりする場合は、peekメソッドの後に、 などの端末操作を追加するcollect必要forEachがあります。

要約すると、peekメソッドはストリームの各要素に対して操作を実行する非終端操作です。これは通常、ストリームの内容を変更せずにストリームの中間状態をデバッグしたり観察したりするために使用されます。

おすすめ

転載: blog.csdn.net/kkwyting/article/details/133494638