java把一个list_java中将一个List等分成n个list的工具方法(推荐)
时间: 2023-11-28 17:48:03 浏览: 80
java中将一个List等分成n个list的工具方法(推荐)
5星 · 资源好评率100%
可以使用Java 8的Stream API来将一个List等分成n个List,具体实现如下:
```java
public static <T> List<List<T>> splitList(List<T> list, int n) {
int size = list.size() / n;
int remainder = list.size() % n;
List<List<T>> result = new ArrayList<>();
int index = 0;
for (int i = 0; i < n; i++) {
int count = size + (i < remainder ? 1 : 0);
result.add(new ArrayList<>(list.subList(index, index + count)));
index += count;
}
return result;
}
```
使用示例:
```java
List<Integer> list = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9);
List<List<Integer>> result = splitList(list, 3);
System.out.println(result);
```
输出结果:
```
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
```
该方法将原始List按照指定的n值等分成若干个List,返回一个List的List。注意,如果原始List的大小不能被n整除,剩余的元素会被均匀地分配到前面的若干个List中。
阅读全文