java中对List分段操作的实例
java中对List分段操作的实例
问题:假设A系统查询出来一个很大很大的List,现在B系统想要得到这个List来导出报表,但是B系统部署环境条件有限,内存容不下这么大一个List,这时候我们就需要把List切分,然后再一个一个导出了。
如果按照传统方式,可能会比较繁琐,我们可以运用List里面的subList方法来实现,代码如下:
importjava.util.ArrayList; importjava.util.List; publicclasslistTest{ publicstaticvoidmain(String[]args){ Listlist=newArrayList (); list.add("aaa");//index_0 list.add("bbb");//index_1 list.add("ccc");//index_2 list.add("ddd");//index_3 list.add("eee");//index_4 list.add("fff");//index_5 list.add("ggg");//index_6 intflag=3;//每次取的数据 intsize=list.size(); inttemp=size/flag+1; booleanspecial=size%flag==0; List cutList=null; for(inti=0;i 测试:
1、flag=1
第1组:[aaa] 第2组:[bbb] 第3组:[ccc] 第4组:[ddd] 第5组:[eee] 第6组:[fff] 第7组:[ggg]2、flag=2
第1组:[aaa,bbb] 第2组:[ccc,ddd] 第3组:[eee,fff] 第4组:[ggg]3、flag=10
第1组:[aaa,bbb,ccc,ddd,eee,fff,ggg]如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望通过本文能帮助到大家,谢谢大家对本站的支持!