FLASH中if 和 switch 的比较 (AS3)

function doAddIf (iTo_)
{
 var iTmStart_:int = getTimer();
 var i:int = 0;
 var bLoop_:Boolean = true;
 var j:int = 10;
 while (bLoop_)
 {
  i++;
  if(j==0)
  {
  }
  else if(j==1)
  {
  }
  else if(j==2)
  {
  }
  else if(j==3)
  {
  }
  else if(j==4)
  {
  }
  else if(j==5)
  {
  }
  else if(j==6)
  {
  }
  else if(j==7)
  {
  }
  else if(j==8)
  {
  }
  else if(j==9)
  {
  }
  else if(j==10)
  {
  }
  if (i==iTo_)
  {
   bLoop_=false;
  }
 }
 trace ("[if]"+(getTimer()-iTmStart_));
}
function dAddSw (iTo_)
{
 var iTmStart_:int = getTimer();
 var i:int = 0;
 var j:int = 10;
 var bLoop_:Boolean = true;
 while (bLoop_)
 {
  i++;
  switch (j)
  {
   case 0:    
    break;
   case 1:    
    break;
   case 2:    
    break;
   case 3:    
    break;
   case 4:    
    break;
   case  5:    
    break;
   case 6:    
    break;
   case 7:    
    break;
   case 8:    
    break;
   case 9:    
    break;
   case 10:    
    break;
  }
  if (i==iTo_)
  {
   bLoop_=false;
  }
 }
 trace ("[switch]"+(getTimer()-iTmStart_));
}

dAddSw (3000000);
doAddIf (3000000);
 

switch]211
[if]161

结论:在FLASH中switch的执行效率不如if语句;

在C++中就不一样了,网上说是switch会快;

阅读更多
文章标签: flash function c++
个人分类: FLASH
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭