概述
最近在项目中遇到一个需求,需要将两个数据表的数据进行比对,这涉及到了两层for循环的嵌套。一开始写得时候发现耗时太久,尝试优化一下。优化的总结如下:
1.将for循环内的无关表达式提取到外面。
for(){
for(){
a=a*b*c;
}
}
应该要将b*c的值先算好,然后再放进循环内。否则会每次循环都浪费资源。
2.将for里面的条件先处理好
相信大家都习惯这样写
for(int i=0;i<list.size();i++){
}
但是,先讲list.size()的值先存进一个变量,资源消耗会更少,速度会更快,条件应改为int i=0;i<变量;i++
3.异常捕获别写在for循环里面,应该要放在外面。
4.在先遍历小的list,然后再第二层遍历大的list
for(int i=0;i<10;i++) {
for(int j=0;j<9999;j++){
}
}
这样也会提高速度。
希望有不同的看法的朋友能提出来,让我及时纠正错误,相互进步。
最后
以上就是温婉百褶裙为你收集整理的两层for循环嵌套如何优化的全部内容,希望文章能够帮你解决两层for循环嵌套如何优化所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复