在面对具体的业务操作中,我们可能会从数据库中查询一部分数据然后根据客户端传进来的数据,然后根据具体的算法,对这2部分的数据进行取交集或者其它的算法;
这个问题延伸就是在面对的具体的2个(List)数据集的操作的时候如果其中的一个数据集中能通过一个元素唯一的确定一个数据,可以把元素转换成HashMap的的格式,这样:1.能减少循环的次数;2,HashMap存放的数据比ArrayList相对来说要大些。
总结:1.在面对数据量比较大的情况下的业务处理(对单个数据元素的处理)根据具体的业务规则来考虑尽量避免使用循环(如果无法避免就没办法);
2.如果在业务规则中有多层循环,可以考虑具体的业务看是否能把里面的循环替换掉(比如用map);
在结果集很少的情况下多层的循环不会影响到具体性能,如果数据量比较大循环可能会成为这个业务的一个瓶颈,所以应该在碰到多层循环,而且数据量还比较大(几千,万个元素的多层循环)时候可以考虑去掉其中的某个循环,或者根据具体业务尽量减少次数(比如取到合适的数据就break 等)。