1 /** 2 * 将一组数据固定分组,每组n个元素 3 * @param source 要分组的数据源 4 * @param n 每组n个元素 5 * @param <T> 6 * @return 7 */ 8 public <T> List<List<T>> fixedGrouping(List<T> source, int n) { 9 10 if (null == source || source.size() == 0 || n <= 0) 11 return null; 12 List<List<T>> result = new ArrayList<List<T>>(); 13 14 int sourceSize = source.size(); 15 int size = (source.size() / n) + 1; 16 for (int i = 0; i < size; i++) { 17 List<T> subset = new ArrayList<T>(); 18 for (int j = i * n; j < (i + 1) * n; j++) { 19 if (j < sourceSize) { 20 subset.add(source.get(j)); 21 } 22 } 23 if(subset.size()>0){ 24 result.add(subset); 25 } 26 } 27 return result; 28 }
原文:https://www.cnblogs.com/yjava/p/11981468.html