[Flex] switch文の書き方
前回Javaのswitch文の書き方を紹介しましたが、
Flexでのswitch文についてもご紹介します。
(Flexというより、actionScriptの構文です。)
Flexのswitch文はJavaとは違い、条件には文字列も指定可能です。
構文はJavaと同じです。
var text:String = "test"; switch (text) { case "rensyu": trace(1); break; case "test": trace(2); break; case "kyukei": trace(3); break; default: trace(4); break; }
この例の場合は、”2″が表示されます。
イメージ通りに指定ができると思います。
スピードもswitch文で書くほうが速い場合が多いので、こちらをお勧めします。
switch文を初めて書く人がよく間違えるのが、break文を書き忘れることです。
書かなくてもエラーにはならず、その場合は、そのまま次のcase文判定が行われます。
この場合、テストした条件によっては、動作に問題が起こらないこともあり、
しばらくたってから、バグに気づくことになります。
ご注意ください。
また、switch文の変わった書き方として、
var obj:TextInput = new TextInput(); switch (true) { case obj is Label: trace("label"); break; case obj is DropDownList: trace("dropdown"); break; case obj is TextInput: trace("textInput"); break; default: trace("other"); break; }
このように書くと、オブジェクトの型の判別ができます。
上記のように、switch文に値そのものではなく、条件を渡して判定したい場合は、
switchの後ろは(true)と書いて、case文の後ろに条件を書くと、複雑な条件分岐が可能です。
なかなか便利な書き方ですね。
switch文としては少しわかりづらい記述となるので、コメントなどで補足してあげてください。
== ランキングに参加しています。ぜひクリックお願いします ==
iPad3はRetinaディスプレイ&クアッドコア搭載で確定?? [オススメ書籍] 仕事ができる社員、できない社員