如何在Java列表中指定索引插入元素?


解决方案

我们可以轻松地使用addAll()方法将一个列表的所有元素添加到另一个列表的指定索引处。

语法

boolean addAll(int index, Collection<? extends E> c)

将指定集合中的所有元素插入到此列表的指定位置(可选操作)。将当前位于该位置的元素(如果存在)以及任何后续元素向右移动(增加其索引)。新元素将按照指定集合的迭代器返回的顺序出现在此列表中。

类型参数

  • - 集合的运行时类型。

参数

  • index  − 要从中插入第一个元素的指定集合的索引。

  • − 包含要添加到此列表的元素的集合。

返回值

如果此列表由于调用而发生更改,则返回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]

更新于:2022年5月9日

540 次浏览

启动您的职业生涯

完成课程获得认证

开始
广告