Java 8 个 X 组中的分组元素
Java 8 Grouping elements in groups of X
我的问题很简单...我有一个元素列表,我想创建一定数量的子组...可以在 Java 中用 API 完成吗? .. 或者我应该开始玩计数器等...
真的没必要为此找一个 API。
这里有一个简单的方法来做你想做的事:
public static <T> List<List<T>> splitList(int groupSize, List<T> list) {
List<List<T>> subLists = new ArrayList<>();
for (int i = 0; i < list.size();) {
subLists.add(list.subList(i, i = Math.min(i + groupSize, list.size())));
}
return subLists;
}
public static void main(String[] args) throws Exception {
List<Integer> list = List.of(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13);
List<List<Integer>> subLists = splitList(3, list);
System.out.println(subLists);
// prints [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12], [13]]
}
我的问题很简单...我有一个元素列表,我想创建一定数量的子组...可以在 Java 中用 API 完成吗? .. 或者我应该开始玩计数器等...
真的没必要为此找一个 API。
这里有一个简单的方法来做你想做的事:
public static <T> List<List<T>> splitList(int groupSize, List<T> list) {
List<List<T>> subLists = new ArrayList<>();
for (int i = 0; i < list.size();) {
subLists.add(list.subList(i, i = Math.min(i + groupSize, list.size())));
}
return subLists;
}
public static void main(String[] args) throws Exception {
List<Integer> list = List.of(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13);
List<List<Integer>> subLists = splitList(3, list);
System.out.println(subLists);
// prints [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12], [13]]
}