Java -switch文-
switchは、式の値によって多重分岐を行うための構文です。
switch文
構文
switch(式){ case 値1: [処理1;] [break;] case 値2: [処理2;] [break;] ~(中略) case default: [処理x;] [break;] } ※ []は省略可能
- switch文では、式の値がcase文の値1と同じならば処理1を実行し、値2と同じならば処理2を実行するというように分岐します。
- defaultを指定すると、一致する値がない場合には処理xを実行します。
- defaultは、省略可能ですが、省略した場合、一致する値がない場合には何も実行されません。
- switch文の式は、必ずbyte,short,char,intのいずれかのデータ型または列挙型を出力するものでなければなりません。
- case文の後ろの値を指定する個所に式を指定することはできません。
break文の利用
- 通常は、 それぞれのcase文によって実行される処理の最後にbreak文を記述します。
- break文が実行された時点でswitch文が終了します。
- break文が抜けていると、その下の行に記述された処理も実行されます。
default文
- default文は、switch文の最後に記述することが多いですが、case文とcase文の間または、switch文の最初に記述することもできます。
- どこに記述しても、すべてのcaseの値が該当しないのみdefault文の処理が実行されます。
case文の値の制限
- case文で指定する値は、switch文で指定した式が出力するデータ型の範囲内になければなりません。
- char型の式の場合、case文の値として負数を指定できません。
- 1つのswitch文のcase文に同じ値を複数指定することはできません。
- caseの後ろの値には、列挙型や定数、ラッパークラスを指定することもできます。