提高代码运行效率(一)之不要用固定的函数返回值当作循环比较数

今天我们来教大家一个小技巧,来提高代码的运行效率,来吧。

先看一段代码

提高代码运行效率(一)之不要用固定的函数返回值当作循环比较数
提高代码运行效率(一)之不要用固定的函数返回值当作循环比较数

大家猜猜结果:

A, 相同

B ,test01()时间短

C ,test02()时间短

来看看结果
提高代码运行效率(一)之不要用固定的函数返回值当作循环比较数

答案是:C

为啥?

因为在函数test01()里面,每一次比较都需要调用sqrt()函数来获得数据来比较j和sqrt(MAX)的大小,导致了函数的入栈出栈等操作,而test02(),只调用了一次sqrt()赋给了a,只需要比较 j 和 a 的值就可以了。
图里可以看出来,效率大概提高了16倍。

结论

多次循环时,需要比较的值是从函数里获取的,把从函数里获得结果先赋到一个变量里(前提是这个值是固定的,比如图里的sqrt(MAX)的值就是固定的),那么可以极大地提高代码运行效率。。。。。。