Java中的ArrayDeque addAll()方法

Java中的ArrayDeque addAll()方法

ArrayDeque的 addAll() 方法用于将传递作为参数的集合的所有元素插入到此ArrayDeque的末尾。添加集合元素到ArrayDeque中,我们需要通过使用addAll(E e)方法迭代遍历集合中的每个元素,并将每个元素添加到ArrayDeque中。此方法与我们在此处讨论的方法相同,但使用更少的工作量。如果此deque因调用此方法而更改,则此方法返回 True

语法:

public boolean addAll(Collection<? extends E> c)

参数: 此方法需要一个参数 c ,其中 c 表示我们要插入到此deque中的元素集合。

返回值: 此方法返回 True ,如果此deque因调用此方法而更改。

异常: 此方法在指定的集合或其任何元素为< b>null**时抛出 NullPointerException

下面的程序说明了ArrayDeque的addAll()方法:

程序1: 演示将包含Numbers的集合添加到ArrayDeque的addAll()方法的程序。

// Java Program Demonstrate addAll()
// method of ArrayDeque
 
import java.util.*;
public class GFG {
 
    public static void main(String[] args)
    {
 
        // create an ArrayDeque which going to
        // contains a list of Numbers
        ArrayDeque<Integer> Numbers = new ArrayDeque<Integer>();
 
        // Add Number to list
        Numbers.add(23);
        Numbers.add(32);
        Numbers.add(45);
        Numbers.add(63);
 
        // print ArrayDeque before calling addAll()
        System.out.println("Before calling addAll()");
        print(Numbers);
 
        // create a collection of Number to
        // add in ArrayDeque using addAll()
        ArrayList<Integer> col = new ArrayList<Integer>();
 
        // add Numbers in collection
        col.add(74);
        col.add(65);
        col.add(84);
 
        // add the elements of collection at the end
        // of ArrayDeque using addAll()
        Numbers.addAll(col);
 
        // print ArrayDeque
        System.out.println("After calling addAll()");
        print(Numbers);
    }
 
    // printing all elements of ArrayDeque
    public static void print(ArrayDeque<Integer> arDe)
    {
 
        arDe.forEach((n) -> System.out.print(n + " "));
 
        System.out.println();
    }
}

输出:

Before calling addAll()
23 32 45 63 
After calling addAll()
23 32 45 63 74 65 84

程序2: 演示将包含学生姓名的集合添加到ArrayDeque的addAll()方法的程序。

// Java程序演示addAll()方法来自ArrayDeque的
//方法
 
import java.util.*;
public class GFG {
 
    public static void main(String[] args)
    {
        // 创建一个ArrayDeque,用来
        //包含实际上是字符串值的学生姓名列表
        ArrayDeque<String> students = new ArrayDeque<String>();
 
        // 添加字符串到列表中
        //每个字符串代表学生姓名
        students.add("Ram");
        students.add("Mohan");
        students.add("Sohan");
        students.add("Rabi");
 
        // 调用addAll()方法之前打印ArrayDeque
        System.out.println("在调用addAll()之前:");
        print(students);
 
        // 创建一个String类型的集合
        //使用addAll()添加到ArrayDeque中
        LinkedList<String> col = new LinkedList<String>();
 
        // 添加姓名到集合中
        col.add("Rohan");
        col.add("Kartik");
 
        //使用addAll()方法将集合的元素添加到
        //ArrayDeque中
        students.addAll(col);
 
        // 打印ArrayDeque
        System.out.println("在调用addAll()之后:");
        print(students);
    }
 
    // 打印ArrayDeque的所有元素
    public static void print(ArrayDeque<String> arDe)
    {
 
        System.out.println("学生姓名列表:");
 
        arDe.forEach((n) -> System.out.print(" | " + n + " | "));
 
        System.out.println("\n");
    }
}

输出:

在调用addAll()之前:
学生姓名列表:
 | Ram |  | Mohan |  | Sohan |  | Rabi | 

在调用addAll()之后:
学生姓名列表:
 | Ram |  | Mohan |  | Sohan |  | Rabi |  | Rohan |  | Kartik |

程序3: 演示addAll()方法抛出的异常。

// Java程序演示ArrayDeque的addAll()方法引发的异常。
 
import java.util.*;
public class GFG {
 
    public static void main(String[] args)
    {
 
        // 创建一个ArrayDeque,用来
        //包含实际上是数字的数字列表
        ArrayDeque<Integer> Numbers = new ArrayDeque<Integer>();
 
        // 将数字添加到列表中
        Numbers.add(223);
        Numbers.add(132);
        Numbers.add(345);
        Numbers.add(563);
 
        // 创建一个空的集合,用来包含数字
        ArrayList<Integer> col = null;
 
        try {
            // 调用addAll()方法
            Numbers.addAll(col);
        }
        catch (Exception e) {
            System.out.println(e);
        }
    }
}

输出:

java.lang.NullPointerException

参考: https://docs.oracle.com/javase/10/docs/api/java/util/ArrayDeque.html#addAll(java.util.Collection)

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程