MikiTech

文系新卒エンジニアの学習記録

【Java】if文の中括弧について

if文の中括弧は省略可能

if文の{}は省略可能です。

   public static void main(String[] args) {
        int a = 5;
        if(a == 5)
        System.out.println("5を判定しました。");
    }
}
//出力イメージ:5を判定しました。

こんな感じ。 以下みたいな感じでも動く。

ただ一行のみしか動作しない
以下のような省略されたコードは、

   public static void main(String[] args) {
        if(false)
        System.out.println("A");
        System.out.println("B");
    }

以下のように解釈される。

public class test {
    public static void main(String[] args) {
        if(false){
            System.out.println("A");  
        }
        System.out.println("B");
    }
}

これならいつもどおり。

だが、可読性が著しく下がるため、基本的に省略しないで書くことが推奨される。(じゃあなんであるんだろう。。。)

またif文が複数重なるネスト構造で{}を省略すると思わぬ動作を招くことがある。

qiita.com

なので使わないほうがいい。
(じゃあなんであるんだろう。。。)