实例如下:
代码如下 | 复制代码 |
/** * 将一个list均分成n个list,主要通过偏移量来实现的 * @param source * @return */ publicstatic List intremaider=source.size()%n;//(先计算出余数) intnumber=source.size()/n;//然后是商 intoffset=0;//偏移量 for(inti=0;i List 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); } returnresult; } |
测试例子如下:
@SuppressWarnings("unused")
publicstaticvoidmain(String[] args) {
List
integers.add(1);
integers.add(2);
integers.add(3);
integers.add(4);
integers.add(5);
List> lists=averageAssign(integers,2);
System.out.println(lists);
}
结果如下:
[[1, 2, 3], [4, 5]]