JAVA中list按照长度分成多个list
时间: 2024-11-12 09:33:37 浏览: 7
在 Java 中,如果你想将 List 划分成多个 List,每个 List 的大小基于指定长度,你可以采用循环迭代的方式逐个添加元素到新的列表中。这里有一个简单的示例:
```java
import java.util.ArrayList;
import java.util.List;
public class ListSplitter {
public static void main(String[] args) {
// 原始的 List
List<String> originalList = new ArrayList<>();
// 添加一些元素
originalList.add("Element1");
originalList.add("Element2");
originalList.add("Element3");
originalList.add("Element4");
originalList.add("Element5");
int sublistLength = 3; // 指定每个新子列表的长度
// 创建新的 List 列表用于存放结果
List<List<String>> subLists = new ArrayList<>();
// 分割原始 List
for (int i = 0; i < originalList.size(); ) {
List<String> subList = new ArrayList<>(); // 新建一个子列表
while (i + sublistLength <= originalList.size()) {
subList.addAll(originalList.subList(i, i + sublistLength));
i += sublistLength; // 更新索引
}
if (!subList.isEmpty()) { // 如果还有剩余元素,添加到子列表
subList.addAll(originalList.subList(i, originalList.size()));
}
subLists.add(subList); // 将子列表加入结果列表
}
// 打印分割后的子列表
for (List<String> slicedList : subLists) {
System.out.println("Sliced List: " + slicedList);
}
}
}
```
在这个例子中,`sublistLength`变量决定了每个子列表的长度。循环遍历原列表,并根据长度条件创建新的子列表。如果到达了原列表的结尾还没有填充满当前子列表,就直接把剩下的元素添加进去。
阅读全文