日期:2014-05-19  浏览次数:20998 次

~~~~~~~~~~好奇怪的一个效率问题。真的不知道为什么。。~~~~~~~~~~
for   (int   index   =   0;   index   <   length;   index++)
{
        this.labNumber.Text   =   Convert.ToString(index   +   1);//1765毫秒                                        
        this.labBaiFenBi.Text   =   Convert.ToInt32(Convert.ToDouble(index   +   1)   /   allNumberTemp   *   100).ToString()   +   "% ";//250毫秒
}

length=1000

allNumberTemp=1000.0

为什么第一个耗时1秒多。。

而第二个耗时0.2秒?。。

第二个还有计算啊。。

为什么?。。都是   label..

------解决方案--------------------
楼主怎么计算的啊??
不可能啊
------解决方案--------------------
运行时编译,第二次是编译后了,效率当然高了。。。
------解决方案--------------------
这个问题没有测试过,不过我猜测第一次装载Convert这个类可能需要一定时间,以后在内存中已经存在就不需要加载会节约一定时间——仅仅是猜测,关注中。