AS3:多个开关/外壳功能VS一个大的

时间:2014-03-20 12:46:36

标签: actionscript-3 optimization switch-statement

我有3个不同的开关功能,每个功能大约有4个。将所有情况都塞进一个大开关功能中真的会这么糟糕吗?我知道在发现合适的情况之前,它必须经历更多的情况,但性能影响不会微不足道吗?我正在努力减少不必要的代码,所以我不必滚动它。它也会节省一些函数声明。

为了澄清,我有几个功能,用户可以选择一些东西。这些函数中的每一个都有一个相应的处理程序,它使用switch语句来查看用户选择的内容。我正在考虑使用1个处理程序,而不是具有所有情况。

2 个答案:

答案 0 :(得分:0)

如果你的意思是。

if(x < 4)
{
   switch(x)
   {
   case 0:
   case 1:
   case 2:
   case 3:
   }
}
else if(x < 8)
{
   switch(x)
   {
   case 4:
   case 5:
   case 6:
   case 7:
   }
}
else
{
   switch(x)
   {
   case 8:
   case 9:
   case 10:
   case 11:
   default:
   }
}
由于&#34;代码可读性&#34;,你可以更好地为所有人做出重大切换。如果您只需要3个开关和4个案例,那么切换的东西不会对性能产生影响......您现在不需要这样做......

我认为这与您的项目相关。完整的相对讨论取决于项目。你是那个决定那些东西的人。

答案 1 :(得分:0)

如果条件相同,将它们放在一个switch语句中是一种更好的做法。 SWITCH语句在字节码级别中不存在,因此如果使用更多SWITCH语句,则字节码将更长。 Check this article.