Java.util.ArrayList.toArray(T[])


描述

所述java.util.ArrayList.toArray(T [])方法返回所有包含在该列表中以正确的顺序(以最后一个元素从第一)的元件的阵列。继约为ArrayList.toArray()中的重要的点

返回数组的运行时类型是指定数组的运行时类型。如果列表适合指定的数组,则返回其中。否则,将使用指定数组的运行时类型和此列表的大小分配新数组。

如果列表适合指定的数组,并且空间足够(即,数组的元素多于列表),则紧跟集合结尾的数组中的元素将设置为null。

声明

以下是java.util.ArrayList.toArray()方法的声明

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

参数

a - 如果列表元素足够大,这是要存储列表元素的数组; 否则,为此目的分配相同运行时类型的新数组。

返回值

此方法返回包含列表元素的数组。

异常

ArrayStoreException - 如果指定数组的运行时类型不是此列表中每个元素的运行时类型的超类型。

NullPointerException - 如果指定的数组为null。

实例

以下示例显示了java.util.Arraylist.toArray()方法的用法。

package com.tutorialspoint;

import java.util.ArrayList;

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

      // create an empty array list with an initial capacity
      ArrayList<Integer> arrlist = new ArrayList<Integer>();

      // use add() method to add values in the list
      arrlist.add(10);
      arrlist.add(12);
      arrlist.add(31);
      arrlist.add(49);

      System.out.println("Printing elements of array1");

      // let us print all the elements available in list
      for (Integer number : arrlist) {
         System.out.println("Number = " + number);
      }  

      // toArray copies content into other array
      Integer list2[] = new Integer[arrlist.size()];
      list2 = arrlist.toArray(list2);

      System.out.println("Printing elements of array2");

      // let us print all the elements available in list
      for (Integer number : list2) {
         System.out.println("Number = " + number);
      }
   }
}

让我们编译并运行上面的程序,这将产生以下结果

Printing elements of array1
Number = 10
Number = 12
Number = 31
Number = 49
Printing elements of array2
Number = 10
Number = 12
Number = 31
Number = 49