if〜else文

条件がfalseの場合の処理

IfSample02では、条件がtrueの場合だけ、「合格です。」「おめでとうございます。」と表示していました。 条件がfalseの場合も、なんらかのメッセージを表示したいと思うのは当然のことでしょう。 条件がfalseの場合にも文を実行するための構文がif〜else文です。

英語のelseには、「さもなければ」という意味があります。

構文 : if〜else文
if (条件)
    文1
else
    文2

この構文では、条件がtrueの場合に文1が実行され、falseの場合には文2が実行されます。

もちろんif〜else文でも、ブロックを使って複数の文を実行することができます。

構文 : 複数の文を実行するif〜else文
if (条件){
    文1
    文2
    ...
}
else {
    文3
    文4
    ...
}
図 6-3 : 複数の文を実行するif〜else文のフローチャート

この構文では、条件がtrueの場合に文1、文2、...と順番に実行されていき、falseの場合には文3、文4、...と順番に実行されていきます。

では、if〜else文を実際に使ってみましょう。

IfSample03.java
import java.io.*;

class IfSample03 {
    public static void main(String[] args) throws IOException{
        BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
        
        System.out.println("得点を入力してください。");
        int point = Integer.parseInt(br.readLine());
        
        if(point >= 80){
            System.out.println("合格です。");
            System.out.println("おめでとうございます。");
        }else{
            System.out.println("不合格です。");
            System.out.println("次のチャンスに備えましょう。");
        }
        
        System.out.println("合格発表を終わります。");
    }
}

条件がtrueの場合はIfSample02と同じ結果です。

IfSample03の実行結果 1
得点を入力してください。
90
合格です。
おめでとうございます。
合格発表を終わります。

そして、新たにfalseの場合にも、メッセージが表示されるようになりました。

IfSample03の実行結果 2
得点を入力してください。
70
不合格です。
次のチャンスに備えましょう。
合格発表を終わります。

if〜else文を使えば、条件がfalseの場合も文を実行できる。