切换语句和数字范围

时间:2011-04-30 06:06:41

标签: actionscript-3

如何在as3中制作switch语句以使案例适用于整个数字范围?

if (mcPaddle.visible == true)
{
    switch (score)
    {
        case  10://10 to 100
            myColor.color = 0x111111;
            break;
        case 110://110 to 1000
            //etc etc
            break;
    }
}

我尝试了多种方法使案例适用于10-100和110-1000之间的所有数字,但似乎无法找到方法来做到这一点,我找不到合适的语法as3中有这样的事情。

4 个答案:

答案 0 :(得分:15)

答案 1 :(得分:0)

ActionScript的switch语句不适用于范围,但您可以使用if / else链轻松完成:

if (score >= 10 && score <= 100)
{
    //10 - 100
}
else if (score <= 110)
{
    //101 - 110
}
else if (score <= 1000)
{
    //111 - 1000
}

答案 2 :(得分:0)

切换语句只是if (a = b) or (a = c) or (a = d) ...类型构造的重述。这不是针对范围的。你可以使用fallthroughs来模拟它:

switch (score) {
   case 10:
   case 11:
   case 12:
   case 13:
   case etc...
        blah blah blah
        break;
}

但这是一种荒唐可笑的方式。使用常规if()

更容易/更轻松

答案 3 :(得分:0)

对于那些在HTML / jQuery中寻找如何使用它的人,我已经使用@ OXMO456的答案来创建这个简单的笔:http://codepen.io/anon/pen/jHFoB

您只需正常设置var并删除以trace开头的行。

聚苯乙烯。我添加这个作为答案,因为我没有足够的代表来评论他的。如果有人可以,请在那里移动/复制。谢谢!