Java Switch
Java Switchステートメント
多くのif..elseを書く代わりに、switchを使用することができます。
switchは、実行する多くのコードブロックの1つを選択します。
構文
switch(expression) {
case x:
// code block
break;
case y:
// code block
break;
default:
// code block
}
これがどのように機能するかです。
switch式は1回だけ評価されます。caseは、それぞれの値と比較されます。- 一致する場合は、関連するコードブロックが実行されます。
breakとdefaultキーワードはオプションであり、この章の後半で説明します。
次の例では、曜日番号を使用して曜日名を計算しています。
例
int day = 4;
switch (day) {
case 1:
System.out.println("Monday");
break;
case 2:
System.out.println("Tuesday");
break;
case 3:
System.out.println("Wednesday");
break;
case 4:
System.out.println("Thursday");
break;
case 5:
System.out.println("Friday");
break;
case 6:
System.out.println("Saturday");
break;
case 7:
System.out.println("Sunday");
break;
}
// Outputs "Thursday" (day 4)
自分で試してみる»breakキーワード
breakキーワードで、switchブロックから抜け出します。
これにより、ブロック内のコードとケーステストの実行が停止します。
一致するものが見つかり、コードを実行したら、breakで抜け出します。これ以降のコードは実行しません。
ブレークは、switchブロック内の残りのすべてのコードの実行を「無視」するため、実行時間を大幅に節約できます。
デフォルトのキーワード
defaultキーワードは、大文字と小文字が一致しない場合に実行するコードを指定します。
例
int day = 4;
switch (day) {
case 6:
System.out.println("Today is Saturday");
break;
case 7:
System.out.println("Today is Sunday");
break;
default:
System.out.println("Looking forward to the Weekend");
}
// Outputs "Looking forward to the Weekend"
次の場合に注意してください。defaultステートメントがswitchブロックの最後のステートメントとして使用されている場合、ブレークは必要ありません。