今回は条件分岐の時に使用する、構文であるswitch文について記事を書きたいと思います。
自身のアウトプットの場となりますので、よろしくお願いいたします。
#switch文について
条件分岐には最もよく使うif文の他にswitch文という構文もあります。
下図のように記述します。
switch(条件の値) {
case 値1:
処理;
break;
case 値2:
処理;
break;
case 値3:
処理;
break;
}
switch文は構文が少し複雑で「:」や「;」を間違えないように記述しましょう。
##if文とswitch文の比較について
switch文とif文の比較を具体例を用いて確認してみます。
//if文の場合
int x = 4;
if(x % 2 == 0) {
//trueになる
System.out.println("偶数");
} else if (x % 2 == 1) {
System.out.println("奇数");
}
//switch文の場合
int x = 4;
switch(x % 2) {
case 0:
System.out.println("偶数");
break;
case 1:
System.out.println("奇数");
break;
}
switch文では、()の中の条件の値と、caseの値が「==」になるとき、処理が実行されます。
今回は「x % 2」が何であるか、で処理を分けたとき、case 0が値として一致したため("偶数")の処理が行われました。
また、switch文の最後につけているbreakとはswitch文を終了する命令です。breakがないと、合致したcaseの処理を行った後、その次のcaseの処理も実行してしまいますので、注意するようにしてください。
int x = 4;
switch(x % 2) {
case 0:
System.out.println("偶数");
//breakがない場合
case 1:
System.out.println("奇数");
break;
}
出力結果↓
偶数
奇数 //合致しない処理まで実行されてしまう
##switch文のdefaultについて
switch文では、どのcaseとも一致しなかったときに実行する処理を、defaultに指定することができます。これはif文でいうelseに似ています。
//if文の場合
if(rank == 1) {
System.out.println("金メダル獲得");
} else if (rank == 2) {
System.out.println("銀メダル獲得");
} else if (rank == 3) {
System.out.println("銅メダル獲得");
} else {
System.out.println("メダル獲得なし");
}
//switch文の場合
switch(rank) {
case 1:
System.out.println("金メダル獲得");
break;
case 2:
System.out.println("銀メダル獲得");
break;
case 3:
System.out.println("銅メダル獲得");
break;
default:
System.out.println("メダル獲得なし");
break;
}
以上がswitch文の説明になります。
次章では、繰り返し処理について書いていきたいと思います。よろしければご覧になってください!
最後までご覧いただきまして、ありがとうございました!