java 把list均分多个
时间: 2023-09-30 20:12:34 浏览: 90
java中将一个List等分成n个list的工具方法(推荐)
5星 · 资源好评率100%
可以使用Java8的流式API来实现将List均分成多个子List。
下面是一个示例代码:
```java
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
public class ListSplitter {
public static <T> List<List<T>> splitList(List<T> list, int chunkSize) {
int totalSize = list.size();
int splitCount = (totalSize + chunkSize - 1) / chunkSize;
return IntStream.range(0, splitCount)
.mapToObj(i -> list.subList(i * chunkSize, Math.min((i + 1) * chunkSize, totalSize)))
.collect(Collectors.toList());
}
public static void main(String[] args) {
// 测试数据
List<Integer> list = new ArrayList<>();
for (int i = 1; i <= 10; i++) {
list.add(i);
}
// 将列表均分为3个子列表
List<List<Integer>> result = splitList(list, 3);
// 输出结果
for (List<Integer> subList : result) {
System.out.println(subList);
}
}
}
```
输出结果为:
```
[1, 2, 3]
[4, 5, 6]
[7, 8, 9]
[10]
```
该代码将一个包含10个元素的List均分为3个子List,每个子List包含3个元素,最后一个子List包含1个元素。
阅读全文