在项目中,我们经常会使用到for循环去匹配对应的数量,例如在成绩表里,我们只保存了学生的id,我们需要根据学生id去匹配对应的学生信息,


这里我就不谈为什么不join关联表去查询(毕竟数量多了,关联查询也是很慢的,我本地就6万的学生信息,10多万的成绩,关联查询就100多秒了。。。)


我们看下面的例子


发现虽然加了break跳出第二层循环,但还是要耗时19秒,这就有点难接受了。


于是,我换了个思路,将学生信息放到map里面,然后循环根据学生id去map里面取,具体结果如下




通过两个结果的对比,我们还是发现第二种比第一种方法效率高很多的,具体什么原因,后续去学习一下,也希望大家指教