Java スイッチの複数のケース
このチュートリアルでは、Java での複数ケースの switch
ステートメントについて説明します。
Java Switch
複数ケース
switch
ステートメントは、if-elseif
シナリオの代わりに使用される多分岐ステートメントです。 switch
ステートメントは、複数の条件に対して 1つのステートメントを実行します。
これらの条件は cases
で割り当てられ、switch
ステートメントは複数のケースを持つことができます。 switch
ステートメントの式は、byte
、short
、char
、および int
プリミティブ型のいずれかでなければなりません。
複数のケースを持つ switch
ステートメントを使用する場合、いくつかの重要な点を考慮する必要があります。
switch
ステートメントは、ケースをいくつでも持つことができますが、ケースの重複は許可されません。- 値がリテラルでなければならない場合、変数は使用できません。
- ケースの値は、式変数と同じデータ型になります。
break
ステートメントを使用してステートメントを終了することができますが、これはオプションであり、省略した場合、実行は続行され、次のケースに移動します。default
ステートメントは、switch
ステートメントでもオプションであり、default
ケースに使用されます。
複数のケースを持つ switch
ステートメントの構文を見てみましょう。
switch (Variable / Expression) {
case Case_Value1:
case Case_Value2:
case Case_Value3:
case Case_Value4:
// code inside the case
// optional break
break;
case Case_Value5:
case Case_Value6:
case Case_Value7:
case Case_Value8:
// code inside the case value
// optional
break;
default:
// code inside the default case.
}
複数のケースで switch
ステートメントを示す例を試してみましょう。
package delftstack;
import java.util.Scanner;
public class Example {
public static void main(String[] args) {
// Declaring a variable for switch expression
Scanner Demo_Input = new Scanner(System.in);
System.out.println("Please enter the name of a month to know how many days it contains: ");
String Month_Name = Demo_Input.nextLine();
switch (Month_Name) {
// Case statements
case "January":
case "March":
case "May":
case "July":
case "September":
case "November":
System.out.println("This month has 31 days");
break;
case "February":
System.out.println("This month has 28 days");
break;
case "April":
case "June":
case "August":
case "October":
case "December":
System.out.println("This month has 30 days");
break;
// Default case statement
default:
System.out.println("Please enter valid month");
}
}
}
上記のコードは、複数のケースを持つ switch
ステートメントを使用して、指定された月の日数を確認します。 出力を参照してください:
Please enter the name of a month to know how many days it contains:
February
This month has 28 days
Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.
LinkedIn Facebook