例子:
for (int i = 0; i < 1000; i++)
for (int j = 0; j < 100; j++)
for (int k = 0; k < 10; k++)
test(i, j, k);
对例子进行分析:
首先要了解到,对于上面的代码,无论我们想如何进行优化,test方法执行的次数是固定的,这方面不存在优化的可能。此时,我们要想,那么该如何优化呢?继续看代码,我们会发现循环中的变量在不断初始化和实例化,而且变量在不断自增,还有就是循环中不断在比较大小。我们发现了这四个问题。我们就从这四个方面进行解决。
优化方案一:就是将循环次数少的放到外面,循环次数多的放在里面,这样可以
最大程度的减少相关变量的实例化次数、初始化次数、比较次数、
自增次数。
优化方案二:就是在优化方案一的基础上,把变量提取出来放到循环外定义好了
在循环里面就可以直接使用了。
本文参考了其他博主分享的知识。