package com.zfsoft.qingdao.test;
import java.util.*;
public class Test2 {
public static void main(String[] args) {
List<Integer> list=new ArrayList<>();
list.add(0);
list.add(1);
list.add(2);
list.add(3);
list.add(4);
list.add(5);
list.add(6);
list.add(7);
list.add(8);
list.add(9);
list.add(10);
List istAll= subList(list,2);
}
/**
* 将List按照每组n个元素进行分组
*
* @param sourceList 待分组的list
* @param n 每组的元素数量
* @param <T>
* @return
*/
private static <T> List<List<T>> subList(List<T> sourceList, int n) {
List<List<T>> rsList = new ArrayList<>();
if (n <= 0) {
rsList.add(sourceList);
return rsList;
}
int listSize = sourceList.size();
int groupNum = (sourceList.size() / n) + 1;
for (int i = 0; i < groupNum; i++) {
List<T> subList = new ArrayList<>();
for (int j = i * n; j < (i + 1) * n; j++) {
if (j < listSize) {
subList.add(sourceList.get(j));
}
}
rsList.add(subList);
}
if (rsList.get(rsList.size() - 1).size() == 0) {
rsList.remove(rsList.size() - 1);
}
return rsList;
}
}
将List按照每组n个元素进行分组
猜你喜欢
转载自blog.csdn.net/qq_41033385/article/details/118603752
今日推荐
周排行