メイン 迷える子羊の部屋【初心者専用】 複数数値のor指定 | 投稿するにはまず登録を |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
sarasou | Åê¹ÆNo.38189 投稿日時: 2008-3-23 16:32 |
新米 居住地: 投稿: 24
使用環境:
WinXP Home SP2 Flash8 |
複数数値のor指定 かなり初歩的なことですが、どこにも載ってなかったので……
例えばaという変数があったとして、この中に格納されている数値によって条件分岐させるとします。 if (a==1) { functionA(); } else if (a==2) { functionB(); } ここで、aの中に1か3が入ってた場合にfunctionAを実行させたい場合、 if (a==1 or a==3) { と書けば望む動作が得られますが、 (1|3)のようにまとめて書くことは出来ませんでしょうか。 試しに if (a==(1|3)) { などとやってみましたが上手く行きません。 どのような書式で指定すれば良いのでしょうか。 ご教授願います。 |
野中文雄 | Åê¹ÆNo.38190 投稿日時: 2008-3-23 21:35 |
ちょんまげら 居住地: 東京 投稿: 4531
使用環境:
CS5.5 .6.8 Vista Home Premium (SP1) |
Re: 複数数値のor指定 ご質問の意図が、よくわかりません。
引用: sarasouさんは書きました: 第1に、演算子はひとつでひとつの処理を行います。等価演算子==ひとつでふたつの値と比較しようというのは、天秤を1回だけ使って2つの分銅の重さと比べようというのと同じで、不可能です。 引用: 試しに 第2に、他に処理の記述の仕方がないかという問いでしたら、考えられないことはありません。条件の数が多いとか、同じような判別を大量に行うなどの場合であれば、処理方法を検討する余地はあります。しかし、ふたつの値と演算するという本質は変わりません。 [1]
[2]
[3]
第3に、単に短く記述したいという場合には、タイプの手間が減るという点で生産性は多少上がるとはいえ、処理効率には直接結びつかないことに注意が必要です。 たとえば、前記[1]は記述は短いものの([追記]スペースを除いた文字数は、むしろ論理和演算子!!を使った方が少ないですね)、ふたつの値との演算が必ず行われます。元の論理和演算子||を使った場合なら、最初の条件(a == 1)でtrueが返されれば、後の条件(a == 3)の評価は行われませんので、その点はむしろ効率が高いといえます。 |
sarasou | Åê¹ÆNo.38246 投稿日時: 2008-3-28 9:50 |
新米 居住地: 投稿: 24
使用環境:
WinXP Home SP2 Flash8 |
Re: 複数数値のor指定 質問の意図はご解釈の通りです。他にどのように書けば良かったのでしょうか。
他の言語では=~等を使って出来たので、ActionScriptでも出来るかな、と思ったのですが、出来ないようですね……。 functionを用いるのは使えそうなので、試してみます。 ありがとうございました。 |
野中文雄 | Åê¹ÆNo.38251 投稿日時: 2008-3-28 21:54 |
ちょんまげら 居住地: 東京 投稿: 4531
使用環境:
CS5.5 .6.8 Vista Home Premium (SP1) |
Re: 複数数値のor指定
|
とんび | Åê¹ÆNo.38252 投稿日時: 2008-3-28 23:46 |
Bak@Fla大巨匠 居住地: 佐賀県 杵島郡 投稿: 275
使用環境:
MX CS3 :Flash CS6:CS6 .7.5 |
Re: 複数数値のor指定 他の言語というのは、具体的にはどの言語なんでしょうか。
一つ具体的な例を書かれると、多少は質問の意図が通じやすくなるかと思います。 この質問自体は、私がそういう言語を思いつかなかったので、興味で聞いてるんですけど
|
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |
投稿するにはまず登録を | |