DEV Community

TANIAOKA, Akihiro
TANIAOKA, Akihiro

Posted on

9章18

このJavaのコード問題は、リストに含まれる文字列をコンソールに出力する機能を持っている方法を選ぶものです。リストの各要素を出力するためには、リストのforEachメソッドを使用してラムダ式(またはメソッド参照)でSystem.out.printlnメソッドを呼び出します。

選択肢AおよびCが正解です。理由を説明しましょう:

A. list.forEach(str -> System.out.println(str));
ここで、forEachメソッドはリストの各要素に対してラムダ式を実行します。ラムダ式str -> System.out.println(str)は、引数として受け取った各文字列(str)をSystem.out.printlnを用いて出力します。

C. list.forEach(System.out::println);
この書式は「メソッド参照」と呼ばれるもので、ラムダ式のシンタックスシュガーです。System.out::printlnSystem.out.printlnメソッドを指し、リストの各要素にこのメソッドを適用します。この場合、各要素が自動的にprintlnメソッドの引数として渡されます。

選択肢B、D、Eは、Javaのシンタックスに従っていないか、forEachメソッドの使用方法が正しくありません。例えば、Bは不正なラムダ式の構文を使用しており、DとEは不正なメソッド参照の構文を使用しています。

Top comments (0)