前提・実現したいこと
Java SE11 Silver資格の勉強中で、ラムダ式について不明な点があった為投稿しました。
引数をラムダ式で記述する際、ラムダ式の最後の中括弧の後にセミコロンが不必要となるのはなぜでしょうか。(伝えたい箇所はソースコードにコメントアウトしています。)
そもそものセミコロンの意味を正しく理解していないから、なのかもしれませんが、どなたかご教授お願いします。
該当のソースコード
Java
1import java.util.*; 2 3public class Main { 4 public static void main(String[] args) throws Exception { 5 List<String> list = new ArrayList<>( 6 Arrays.asList(new String[]{"a","b","c"}) 7 ); 8 list.removeIf( 9 (String s) -> { 10 return s.equals("b"); 11 }//⇦ここに;をつけるとエラーになる 12 ); 13 System.out.println(list); 14 } 15}
仮定
C#には式形式とステータスメントの2種類のラムダがあるようだが、これがJavaにも関係するのか?
それともremoveIfメソッドの、文の終わりを表し、競合してしまうから構文ルールとして記述しないのか?
回答2件
あなたの回答
tips
プレビュー