JAVAの条件分岐:switch文
if文と並ぶ条件分岐の構文として、もう一つ、switch文があります。
if文が条件が真偽で処理を変える2択(elseifを付ければ複数の選択肢を持たすことができるが)であるのに対し、switch文は条件の結果が2択ではなく複数の選択肢がある場合に用いると、if文よりも簡潔に書くことができます。
switch文
switch文は以下のように書きます。
switch ( 式 ) {
case 定数1:
処理1
break;
case 定数2:
処理2
break;
default:
処理3
}
「式」の結果が「定数」と同じであるとき、そこに書かれている「処理」を実行します。
breakは「switch文から抜ける」という意味です。
各処理にbreakを書かない場合は、引き続き次に書かれている処理を実行します。
「定数#:」は「ラベル」と言って、プログラム内の目印の役割を果たしますが、それ以上の意味はありません。
switch文の場合はcaseとラベルを組み合わせることで、式の結果ラベルに飛ばす、という処理を行うことができます。
「default:」には、提示した定数に当てはまらなかった場合の処理を書きます。default:は省くことができます。
例
int Hensu = 1
switch( Hensu ){
case 1:
System.out.println ( “1番目の処理” );
break;
case 2:
System.out.println ( “2番目の処理” );
break;
default:
System.out.println ( “その他の処理” );
}
式に設定できるデータ型は以下の6つに決まっています。
- byte
- char
- short
- int
- enum
- String
式に等号(==)、不等号(<>)を使うことはできません。
四則演算等はできるので、「Hensu + Hensu2」といったような書き方をすることはできます。
「case 定数:」以下に何も書かずに次のcaseを書くこともできます。
これは、「1と2と3の場合は処理Aをさせる」というような場合に使います。
switch ( Hensu ){
case 1:
case 2:
case 3:
System.out.println( “1~3の場合の処理” );
break;
default:
System.out.println( “その他の処理” );
}
関連記事