这条线路有最快捷的方式吗?
ballAngelRadianVector = -ballAngelRadianVector;
还有这个:
ballDegree = fee - ballDegree ;
答案 0 :(得分:3)
我认为你不能比这更快..看到我做的快速检查:
var i:uint = 0;
for(i; i<1000000; i++)
{
var a:int = -i;
}
trace(getTimer()); //14
答案 1 :(得分:2)
我实际上是在好奇地想知道类似的事情(我知道这不是我申请的瓶颈)。我的问题是,将var设置为负值或将其乘以-1更容易。我想知道这是否因CPU,操作系统等而异,但我运行了以下测试:
$number = rand(100000,999999999);
$iterations = 10000000;
$start = microtime(true);
for($i = 0; $i <= $iterations; $i++)
$number = -$number;
echo "time: ".(microtime(true)-$start)."\n";
//
$start = microtime(true);
for($i = 0; $i <= $iterations; $i++)
$number = $number * -1;
echo "time: ".(microtime(true)-$start)."\n";
//
$start = microtime(true);
for($i = 0; $i <= $iterations; $i++)
$number = -$number;
echo "time: ".(microtime(true)-$start)."\n";
//
$start = microtime(true);
for($i = 0; $i <= $iterations; $i++)
$number = $number * -1;
echo "time: ".(microtime(true)-$start)."\n";
产生了输出:
time: 0.66124606132507 (-self)
time: 0.64714503288269 (*-1)
time: 0.66628909111023 (-self)
time: 0.65639805793762 (*-1)
所以看起来乘以-1总是更快(可忽略不计的数量)