Java-switch-statement-in-java
提供:Dev Guides
javaのswitchステートメント
*switch* ステートメントを使用すると、変数を値のリストと等しいかどうかをテストできます。 各値はケースと呼ばれ、オンになっている変数はケースごとにチェックされます。
構文
拡張forループの構文は次のとおりです-
switch(expression) {
case value :
//Statements
break;//optional
case value :
//Statements
break;//optional
//You can have any number of case statements.
default ://Optional
//Statements
}
次のルールは、*スイッチ*ステートメントに適用されます-
- switchステートメントで使用される変数は、整数、変換可能な整数(byte、short、char)、文字列、および列挙のみです。
- スイッチ内には、任意の数のcaseステートメントを含めることができます。 各ケースの後に、比較する値とコロンが続きます。
- ケースの値は、スイッチの変数と同じデータ型である必要があり、定数またはリテラルである必要があります。
- オンに切り替えられる変数がケースと等しい場合、そのケースに続くステートメントは、_break_ステートメントに達するまで実行されます。
- _break_ステートメントに達すると、スイッチは終了し、制御のフローはswitchステートメントに続く次の行にジャンプします。
- すべてのケースに休憩を含める必要はありません。 休憩が表示されない場合、制御の流れは、休憩に到達するまで後続のケースに_フォールスルー_します。
- _switch_ステートメントには、オプションのデフォルトケースを含めることができます。これは、スイッチの最後に表示する必要があります。 デフォルトのケースは、どのケースにも当てはまらない場合にタスクを実行するために使用できます。 デフォルトの場合、ブレークは必要ありません。
流れ図
例
public class Test {
public static void main(String args[]) {
//char grade = args[0].charAt(0);
char grade = 'C';
switch(grade) {
case 'A' :
System.out.println("Excellent!");
break;
case 'B' :
case 'C' :
System.out.println("Well done");
break;
case 'D' :
System.out.println("You passed");
case 'F' :
System.out.println("Better try again");
break;
default :
System.out.println("Invalid grade");
}
System.out.println("Your grade is " + grade);
}
}
さまざまなコマンドライン引数を使用して、上記のプログラムをコンパイルおよび実行します。 これは、次の結果を生成します-
出力
Well done
Your grade is C