こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

(if/elseif)と(switch文)の使い分け方

プログラミング初心者です。

switch文がある事を最近知りました。
条件分岐をする時は主にif文を使用してきましたが、switch文とはどのように使い分けるものなのでしょうか。

こんな質問で申し訳ありませんが、よろしくお願いします。

投稿日時 - 2007-04-25 12:34:10

QNo.2949161

暇なときに回答ください

質問者が選んだベストアンサー

まぁswitchは原則、特定の条件に一致した場合の分岐ですから、
ifのように柔軟ではありません。

たとえば
if($a==1) ・・・
elseif($b==1)・・・
とか
if($a>1) ・・・
else($a>0) ・・・
などswitchには向いていません。

逆にif分岐は冗長な表現になるため列記すると視認性がおちることから
単純な分岐で、要素数が多い場合はswitchを使うことが多いです。

switch($a){
case 1:
・・・
case 2:
・・・
case 3:
・・・
}
とするとわかりやすいですが、
if($a==1)・・・
else($a==2)・・・
else($a==3)・・・
などとすると、いちいち$a==○○などという評価式を書くため
見た目にもいまいちです

投稿日時 - 2007-04-25 13:17:35

お礼

確かに。単純な分岐でしか機能しなさそうですね。
回答ありがとうございました。

投稿日時 - 2007-04-28 08:45:22

ANo.2

このQ&Aは役に立ちましたか?

2人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

分岐材料が多いときにswitchを使います。
if(A==1)
処理1;
elseif(A==2)
処理2;
elseif(A==3)
処理3;
else
処理4;
と、
switch(A){
case 1:
処理1;break;
case 2:
処理2;break;
case 3:
処理3;break;
default:
処理4;
}
は、同じことです。

投稿日時 - 2007-04-25 12:47:20

お礼

回答ありがとうございました。

投稿日時 - 2007-04-28 08:43:37

あなたにオススメの質問