📜  Java ArrayList addAll()

📅  最后修改于: 2020-09-27 00:16:33             🧑  作者: Mango

Java ArrayList addAll()方法将集合的所有元素添加到arraylist中。

addAll()方法的语法为:

arraylist.addAll(int index, Collection c)

在这里, arraylistArrayList类的对象。


addAll()参数

ArrayList的addAll()方法可以采用两个参数:

  • index (可选)-插入集合的所有元素的索引
  • 集合 -包含要插入的元素的集合

如果未传递index参数,则将集合添加到arraylist的末尾。


addAll()返回值
  • 如果将集合成功插入到arraylist中,则返回true
  • 如果指定的集合为null,则引发NullPointerException
  • 如果index超出范围,则引发IndexOutOfBoundsException

示例1:使用ArrayList addAll()插入元素
import java.util.ArrayList;

class Main {
    public static void main(String[] args){
        
        // create an arraylist
        ArrayList primeNumbers = new ArrayList<>();
        // add elements to arraylist
        primeNumbers.add(3);
        primeNumbers.add(5);
        System.out.println("Prime Numbers: " + primeNumbers);

        // create another arraylist
        ArrayList numbers = new ArrayList<>();
        numbers.add(1);
        numbers.add(2);

        // Add all elements from primeNumbers to numbers
        numbers.addAll(primeNumbers);
        System.out.println("Numbers: " + numbers);
    }
}

输出

Prime Numbers: [3, 5]
Numbers: [1, 2, 3, 5]

在上面的示例中,我们创建了两个名为primeNumbersnumbers的数组列表 。注意这一行,

numbers.addAll(primeNumbers);

在这里, addAll()方法不包含可选的index参数。因此,将arraylist primeNumbers中的所有元素添加到arraylist number的末尾。

注意 :我们已使用add()方法将单个元素添加到arraylist。要了解更多信息,请访问Java ArrayList add()。


示例2:将元素插入到指定位置
import java.util.ArrayList;

class Main {
    public static void main(String[] args){
        ArrayList languages1 = new ArrayList<>();
        languages1.add("Java");
        languages1.add("Python");
        System.out.println("ArrayList 1: " + languages1);

        // create another arraylist
        ArrayList languages2 = new ArrayList<>();
        languages2.add("JavaScript");
        languages2.add("C");
        System.out.println("ArrayList 2: " + languages2);

        // Add elements from languages1 to languages2 at index 1
        languages2.addAll(1, languages1);
        System.out.println("Updated ArrayList 2: " + languages2);
    }
}

输出

ArrayList 1: [Java, Python]
ArrayList 2: [JavaScript, C]
Updated ArrayList 2: [JavaScript, Java, Python, C]

在上面的示例中,我们有两个数组列表,名为language1language2 。注意这一行,

languages2.addAll(1, languages1);

在这里, addAll()包含可选的index参数。因此,将数组列表language1中的所有元素添加到索引为0的 语言中。


示例3:将元素从集合插入到ArrayList
import java.util.ArrayList;
import java.util.HashSet;

class Main {
    public static void main(String[] args){

        // create a hashset of String type
        HashSet set = new HashSet<>();

        // add elements to the hashset
        set.add("Java");
        set.add("Python");
        set.add("JavaScript");
        System.out.println("HashSet: " + set);

        // create an arraylist
        ArrayList list = new ArrayList<>();

        // add element to arraylist
        list.add("English");
        System.out.println("Initial ArrayList: " + list);

        // Add all elements from hashset to arraylist
        list.addAll(set);
        System.out.println("Updated ArrayList: " + list);
    }
}

输出

Set: [Java, JavaScript, Python]
Initial ArrayList: [English]
Updated ArrayList: [English, Java, JavaScript, Python]

在上面的示例中,我们创建了一个名为set的哈希和一个名为list的数组列表 。注意这一行,

list.addAll(set);

在这里,我们使用addAll()方法将哈希集的所有元素添加到arraylist中。方法中不存在可选的index参数。因此,所有元素都添加在arraylist的末尾。