Kodrill

Java SE 17 Gold (1Z0-826-JPN) 試験 / Java ストリーム API ・ 無料問題 3/3

Java ストリーム API 問題3[Stream API の概要]

次のコードを実行したときの出力を選んでください。

Main.java
import java.util.stream.*;​public class Main {    public static void main(String[] args) {        Stream.of(1, 2, 3)            .filter(n -> { System.out.print("f" + n + " "); return n % 2 == 1; })            .map(n -> { System.out.print("m" + n + " "); return n; })            .forEach(n -> System.out.print("e" + n + " "));    }}

選択肢

  • A.f1 m1 e1 f2 f3 m3 e3正解
  • B.f1 f2 f3 m1 m3 e1 e3
  • C.f1 m1 e1 f2 m2 e2 f3 m3 e3
  • D.f1 f2 f3 m1 m2 m3 e1 e3

解説

ストリームは「すべての要素に filter → すべての要素に map」のように操作ごとにまとめて処理するのではなく、1つの要素をパイプラインの最後まで流してから次の要素に進みます。2 は filter で除外されるので、map と forEach には渡りません。

「Java ストリーム API」の無料問題

ここで公開しているのは無料範囲の問題です。無料登録すると、解答の記録・ダッシュボードでの復習ができ、 プレミアムならこの問題セットの全問題と本番形式の模擬試験も解けます。