public static <T> List<List<T>> splitList(List<T> list, int splitSize) {
//判断集合是否为空
if (list == null || list.size() == 0) {
return new ArrayList<List<T>>();
}
//计算分割后的大小
int maxSize = (list.size() + splitSize - 1) / splitSize;
//开始分割
return Stream.iterate(0, n -> n + 1)
.limit(maxSize)
.parallel()
.map(a -> list.stream().skip(a * splitSize).limit(splitSize).collect(Collectors.toList()))
.filter(b -> !b.isEmpty())
.collect(Collectors.toList());
}
分割List工具类
于 2024-09-06 17:20:47 首次发布