Java.util.ArrayDeque 类

java.util.ArrayDeque.toArray() 方法返回一个数组,其中包含按正确顺序排列的双端队列中的所有元素(从第一个元素到最后一个元素);返回数组的运行时类型是指定数组的运行时类型。如果给定的双端队列适合指定的数组,则将其返回到其中。否则,将使用指定数组的运行时类型和给定双端队列的大小分配一个新数组。

如果双端队列适合指定数组且有空闲空间,则数组中紧随其后的元素双端队列的末尾设置为 null。

语法

public <T> T[] toArray(T[] a)

参数

a 指定要存储 ArrayDeque 元素的数组(如果足够大);否则,为此目的分配一个相同运行时类型的新数组。

返回值

返回包含所有元素的数组

异常

  • 抛出ArrayStoreException,如果a的运行时类型不是其中每个元素的运行时类型的超类型双端队列。
  • 如果给定数组为 null,则抛出 NullPointerException

示例:

在示例中下面,java.util.ArrayDeque.toArray() 方法返回一个包含给定双端队列所有元素的数组。

import java.util.*;

public class MyClass {
  public static void main(String[] args) {
    //创建一个ArrayDeque
    ArrayDeque<Integer> MyDeque = new ArrayDeque<Integer>();

    //填充ArrayDeque
    MyDeque.add(10);
    MyDeque.add(20);
    MyDeque.add(30);
    MyDeque.add(40);

    //创建一个空数组
    Integer[] Arr = new Integer[5];

    //将双端队列转换为数组
    MyDeque.toArray(Arr);

    //打印数组
    System.out.print("The Arr contains: ");
    for(int i = 0; i < Arr.length; i++)
      System.out.print(Arr[i]+ " ");
  }
}

上述代码的输出将是:

The Arr contains: 10 20 30 40 null