この章ではswitch文について説明します。
if文と同じく条件分岐できるのがswitch文です。 switchのカッコ()の中の式が、caseの値と一致するとbreakまでの文が実行されます。
breakはブロックを抜けるために存在します。
ブロックとはif文でも出てきましたが、の部分です。
switch文の場合はbreakでswitchのブロックを抜けることが出来ます。
ではswitch文の例を見てみましょう。 先ほどのswitch文と同じことをif文で表すと以下のようになります。 次は仮にbreak文を記述しなければどうなるか説明します。 通常はcaseの値に一致した場合、それ以降の処理をbreakの箇所まで実行していきますが、 caseの値に一致したのに関わらずbreakがないと次のbreakまで 、もしくはbreakがどこにもなければdefaultまで処理が実行されます。
仮に上の例で入力したaの値が0だとすると、0はの値と一致するのでを実行して処理が終わるはずのところ、breakが無いがために、そこで止まらず抜けて行ってしまいます。
さらににもにもbreakが無いのでそこの処理も実行されて、最後のdefaultまで実行されてしまいます。
つまりaの値が0の場合、以下のすべてが実行されることになります。
次の例を見てみましょう。 今まで、breakまでのcase文は1つだけでしたが、上の例のようにcase文はまとめて複数設置することが出来ます。
switchの式がbreakまでの複数のcaseの中でどれか1つのcaseの値と合致した場合はそこの処理文を実行してbreakで抜けます。
カテゴリー