/**
* 平均拆分list方法.
* @param source
* @param n
* @param <T>
* @return
*/
public static <T> List<List<T>> averageAssign(List<T> source,int n){
List<List<T>> result=new ArrayList<List<T>>();
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;
}
n为平均拆分为几份
该代码段提供了一个Java方法,用于将一个类型为T的列表(source)平均分成n份。它计算余数,确定每份的大小,并使用subList创建子列表。方法返回一个包含这些子列表的列表。
739

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



