while正逆序的测试结果
又是对性能验证的一个例子。测试代码如下:
public function run():void { var start:int = getTimer(); var i:int = max; while(--i > -1) { var a:int = 1; var b:int = 1; var c:int = 1; var d:int = 1; } trace("逆向执行时间====" + (getTimer() - start)); } public function run2():void { var start:int = getTimer(); var i:int = 0; while(i++ < max) { var a:int = 1; var b:int = 1; var c:int = 1; var d:int = 1; } trace("正向执行时间====" + (getTimer() - start)); }
测试结果如下:
while测试
10000
逆向执行时间====0
正向执行时间====0
100000
逆向执行时间====31
正向执行时间====24
1000000
逆向执行时间====233
正向执行时间====222
10000000
逆向执行时间====2225
正向执行时间====2314
100000000
逆向执行时间====2170
正向执行时间====2266
稍微细心的同学会发现,在数据量级较小的情况下正序的执行时间倒是比逆序的少。所以正常情况下正序就可以了