public class SubList {
public static void main(String[] args) {
List<String> strings = new ArrayList<String>();
for(int i=1;i<=11;i++){
strings.add(i+"");//往List中添加数据
}
System.out.println(strings.toString());
System.out.println(strings.size());
int listsize = (null==strings)?0:strings.size();//List总记录条数,做非空判断避免程序出现异常
int perpagesize = 3;//每个子List存放的记录条数
int sumpagenumber = listsize/perpagesize;//总共需要多少个子List,整数相除会直接舍去小数部分
int lastListsize = listsize%perpagesize;//最后一个List的size
if(lastListsize!=0){//如果最后一个List的大小不为0,则所需的List个数需要加1
sumpagenumber++;
}
System.out.println(sumpagenumber);
for(int i=0;i<sumpagenumber;i++){
int starnum = i*perpagesize;//每个子List起始的位置
if(starnum+perpagesize<listsize){
System.out.println((starnum+1)+"-"+(starnum+perpagesize));//每个List包含的记录范围
System.out.println(strings.subList(starnum, starnum+perpagesize));//子List
}else{
System.out.println((starnum+1)+"-"+(listsize));//每个List包含的记录范围
System.out.println(strings.subList(starnum, listsize));//子List
}
}
}
}
public static void main(String[] args) {
List<String> strings = new ArrayList<String>();
for(int i=1;i<=11;i++){
strings.add(i+"");//往List中添加数据
}
System.out.println(strings.toString());
System.out.println(strings.size());
int listsize = (null==strings)?0:strings.size();//List总记录条数,做非空判断避免程序出现异常
int perpagesize = 3;//每个子List存放的记录条数
int sumpagenumber = listsize/perpagesize;//总共需要多少个子List,整数相除会直接舍去小数部分
int lastListsize = listsize%perpagesize;//最后一个List的size
if(lastListsize!=0){//如果最后一个List的大小不为0,则所需的List个数需要加1
sumpagenumber++;
}
System.out.println(sumpagenumber);
for(int i=0;i<sumpagenumber;i++){
int starnum = i*perpagesize;//每个子List起始的位置
if(starnum+perpagesize<listsize){
System.out.println((starnum+1)+"-"+(starnum+perpagesize));//每个List包含的记录范围
System.out.println(strings.subList(starnum, starnum+perpagesize));//子List
}else{
System.out.println((starnum+1)+"-"+(listsize));//每个List包含的记录范围
System.out.println(strings.subList(starnum, listsize));//子List
}
}
}
}
本文介绍了一种使用Java对List进行分批处理的方法,通过将一个大的List拆分成多个较小的子List来提高处理效率。文章展示了如何创建并填充一个包含11个元素的List,然后计算该List的大小,并基于指定的每页大小(此处为3),将其拆分为若干子List进行批量处理。

被折叠的 条评论
为什么被折叠?



