ArrayList按指定大小分割集合
ArrayList按指定大小分割集合
项目中使用SpringDataJpa的使用,用到了批量操作,发现框架本身有限制,长度不能超过1000,所以就百度了一下,网上都说是分段处理,也有说用OR的,但数据过大的话,总是那么麻烦,下面模板,大家可以直接套用哈,根据自己业务可以进行修改,也是我本人网上拷贝的,不过用起来的确不错,防止丢失,我也在此记录一下,希望可以在各位苦恼之际,帮助到各位
模板
/**
* 按指定大小,分隔集合,将集合按规定的个数分为n个部分
* @param
* @param list list列表
* @param len 长度
* @return
*/
public static List> splitList(List list, int len){
if(list == null || list.size() == 0 || len<1) {
return null;
}
List> result = new ArrayList>();
int size = list.size();
int count = (size + len -1)/len;
for(int i=0; i subList = list.subList(i*len, ((i+1)*len > size ? size : len*(i+1)));
result.add(subList);
}
return result;
}