導入
「点数が90点以上ならA、70点以上ならB…」のように、条件によって処理を変えたいことはよくあります。それを実現するのが if 文です。
説明
if (条件) { ... } は、条件が true のときだけ { } の中を実行します。else if で条件を追加し、else で「それ以外」を受けられます。
public class Main {
public static void main(String[] args) {
int score = 72;
if (score >= 90) {
System.out.println("A");
} else if (score >= 70) {
System.out.println("B");
} else if (score >= 50) {
System.out.println("C");
} else {
System.out.println("D");
}
}
}
if (score >= 90)… 条件がtrueならこのブロックを実行し、それ以降のelse if/elseは評価すらされずスキップされます。else ifは上から順に評価され、最初に条件が成立したところで処理が実行されて終わります。score = 72のとき、score >= 90はfalseなので次へ、score >= 70がtrueなのでここで"B"が表示され、以降は見られません。elseはどの条件にも当てはまらなかったときの受け皿です。
やってみよう
下のエディタで score の値を色々変えて(95、60、30 など)、A〜D の表示がどう変わるか確かめましょう。
演習
int temperature = 32; を用意し、30以上なら "真夏日"、25以上なら "夏日"、それ以外なら "普通の日" を表示してください(結果は 真夏日)。
ヒント1を見る
if (temperature >= 30) { ... } else if (temperature >= 25) { ... } else { ... } の形にします。
ヒント2を見る
それぞれのブロックで System.out.println("真夏日"); のように表示します。