問題
リレーの順位に応じて以下の点数を出力してくださ。
1位は50点、2位は40点、3位は30点、4位は20点、5位以下は10点。
public static void main(String[] args) {
score(1);
}
public static void score(int grade) {
switch(grade) {
case 1:
System.out.println("50点");
break;
case 2:
System.out.println("40点");
break;
case 3:
System.out.println("30点");
break;
case 4:
System.out.println("20点");
break;
default:
System.out.println("10点");
break;
}
}
//演算結果
//50点
補足
- switch文の場合if文と違って、条件に当てはまっても以降の処理を行うのでbreakを使って強制的に終了させる必要がある。
→逆にあえてbreakを書かずに処理を行わせることもある - defaultは必ずしも必要というわけではない
- 一般的には分岐が3つや4つ以上になるときに使われるらしいが、スクールの先生はifを使うことの方が多い気がすると言っていた。(私はifの方が先に条件を設定するからわかりやすくて好きかも)