对arraylist中每一段数据新加一个数据
时间: 2024-02-17 16:01:54 浏览: 21
如果你想要在 `ArrayList` 中每一段数据的末尾添加一个新的元素,你可以遍历 `ArrayList`,然后对于每一段数据,使用 `List.subList()` 方法获取该段数据的视图,再将新元素添加到该视图的末尾。
示例代码:
```java
List<Integer> list = new ArrayList<>(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10));
int n = 3; // 每一段数据的长度为 3
int newElement = 100; // 要添加的新元素
for (int i = 0; i < list.size(); i += n) {
int endIndex = Math.min(i + n, list.size()); // 计算当前段数据的末尾索引
List<Integer> subList = list.subList(i, endIndex); // 获取当前段数据的视图
subList.add(newElement); // 将新元素添加到该视图的末尾
}
System.out.println(list); // 输出:[1, 2, 3, 100, 4, 5, 6, 100, 7, 8, 9, 100, 10]
```
在上面的示例中,我们先创建了一个包含 10 个元素的 `ArrayList` 对象,然后定义了每一段数据的长度为 3,要添加的新元素为 100。接下来对 `ArrayList` 进行遍历,对于每一段数据,使用 `List.subList()` 方法获取该段数据的视图,然后将新元素添加到该视图的末尾。最后输出修改后的 `ArrayList` 对象。
需要注意的是,在使用 `subList()` 方法获取视图后,我们只能使用它的基本操作方法,不能进行修改 `ArrayList` 大小的操作,否则会抛出 `ConcurrentModificationException` 异常。