一聚教程网:一个值得你收藏的教程网站

热门教程

java中将一个List等分成n个list的工具方法(推荐)

时间:2022-06-29 01:31:42 编辑:袖梨 来源:一聚教程网

实例如下:

 

 代码如下复制代码

/**

 * 将一个list均分成n个list,主要通过偏移量来实现的

 * @param source

 * @return

 */

 publicstaticList> averageAssign(Listsource,intn){

 List> result=newArrayList>();

 intremaider=source.size()%n;//(先计算出余数)

 intnumber=source.size()/n;//然后是商

 intoffset=0;//偏移量

 for(inti=0;i

  Listvalue=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);

 }

 returnresult;

 }

 

测试例子如下:

@SuppressWarnings("unused")

 publicstaticvoidmain(String[] args) {

 Listintegers=newArrayList<>();

 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]]

热门栏目