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

稍微细心的同学会发现,在数据量级较小的情况下正序的执行时间倒是比逆序的少。所以正常情况下正序就可以了

posted @ 2011-12-12 10:54  yurong3000  阅读(248)  评论(0编辑  收藏  举报