public<T>List<List<T>>averageAssign2(List<T> source,int splitNum){List<List<T>> result =newArrayList<List<T>>();//循环下标int i =0;//集合总数 / 分割每段数for(; i < source.size()/ splitNum; i++){//splitNum代表每段分割的子集合数据条数
result.add(source.subList(i * splitNum,(i +1)* splitNum));}//如果有余数,再将剩下的追加进去if(source.size()% splitNum !=0){
result.add(source.subList(i * splitNum, i * splitNum + source.size()% splitNum));}return result;}
二、将集合分割成指定份数
public<T>List<List<T>>averageAssign(List<T> source,int n){List<List<T>> result =newArrayList<List<T>>();//n代表待分割的份数int remaider = source.size()% n;//(先计算出余数)int number = source.size()/ n;//然后是商int offset =0;//偏移量for(int i =0; i < n; i++){List<T> value =null;if(remaider >0){
value = source.subList(i * number + offset,(i +1)* number + offset +1);
remaider--;
offset++;}else{
value = source.subList(i * number + offset,(i +1)* number + offset);}
result.add(value);}return result;}