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;
ListcutList=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]
如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望通过本文能帮助到大家,谢谢大家对本站的支持!