下面小编就为大家带来一篇java中将一个List等分成n个list的工具方法(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
实例如下:
/** * 将一个list均分成n个list,主要通过偏移量来实现的 * @param source * @return */ public static List<List> averageAssign(List <strong style="color:transparent">来源gaodai#ma#com搞@@代~&码网</strong>source,int n){ List<List> result=new ArrayList<List>(); int remaider=source.size()%n; //(先计算出余数) int number=source.size()/n; //然后是商 int offset=0;//偏移量 for(int i=0;i<n;i++){ List 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; }
测试例子如下:
@SuppressWarnings("unused") public static void main(String[] args) { List integers=new ArrayList(); integers.add(1); integers.add(2); integers.add(3); integers.add(4); integers.add(5); List<List> lists=averageAssign(integers, 2); System.out.println(lists); }
结果如下:
[[1, 2, 3], [4, 5]]
以上就是java中将一个List等分成n个list的工具方法(推荐)的详细内容,更多请关注gaodaima搞代码网其它相关文章!