如何在Java列表中指定索引插入元素?
解决方案
我们可以轻松地使用addAll()方法将一个列表的所有元素添加到另一个列表的指定索引处。
语法
boolean addAll(int index, Collection<? extends E> c)
将指定集合中的所有元素插入到此列表的指定位置(可选操作)。将当前位于该位置的元素(如果存在)以及任何后续元素向右移动(增加其索引)。新元素将按照指定集合的迭代器返回的顺序出现在此列表中。
类型参数
E - 集合的运行时类型。
参数
index − 要从中插入第一个元素的指定集合的索引。
c − 包含要添加到此列表的元素的集合。
返回值
如果此列表由于调用而发生更改,则返回true
抛出异常
UnsupportedOperationException − 如果此列表不支持addAll操作。
ClassCastException − 如果指定集合的元素的类阻止将其添加到此列表。
NullPointerException − 如果指定集合包含一个或多个空元素,而此列表不允许空元素,或者如果指定集合为空。
IllegalArgumentException − 如果指定集合的元素的某些属性阻止将其添加到此列表。
IndexOutOfBoundsException − 如果索引超出范围 (index < 0 || index > size())。
示例
以下示例演示如何使用addAll()方法将一个列表的所有元素添加到另一个列表的特定索引处。
package com.tutorialspoint; import java.util.ArrayList; import java.util.List; public class CollectionsDemo { public static void main(String[] args) { // Create a list object List<Integer> list = new ArrayList<>(); // add elements to the list list.add(1); list.add(2); list.add(3); list.add(4); list.add(5); list.add(6); // print the list System.out.println(list); List<Integer> list1 = new ArrayList<>(); list1.add(0); list1.addAll(0,list); System.out.println(list1); } }
输出
这将产生以下结果:
[1, 2, 3, 4, 5, 6] [1, 2, 3, 4, 5, 6, 0]
广告