如何在 Java 中将 ArrayList 转换为数组?

javaobject oriented programmingprogramming更新于 2024/12/31 2:20:17

ArrayList 提供了两种将其转换为 Array 的方法。

方法 #1

Object[] toArray()

返回一个数组,该数组包含此列表中按正确顺序排列的所有元素(从第一个元素到最后一个元素)。

方法 #2

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

返回一个数组,该数组包含此列表中按正确顺序排列的所有元素(从第一个元素到最后一个元素);返回数组的运行时类型是指定数组的类型。如果列表适合指定数组,则将其返回到其中。否则,将分配一个新数组,其运行时类型为指定数组,大小为此列表的大小。

类型参数

  • T − 包含集合的数组的运行时类型。

参数

  • a − 如果此列表的元素足够大,则为该数组存储此列表的元素;否则,将为此目的分配一个相同运行时类型的新数组。

返回

包含此列表元素的数组。

抛出

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

  • NullPointerException − 如果指定数组为 null。

示例

以下是显示 toArray() 方法用法的示例 −

package com.tutorialspoint;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class CollectionsDemo {
   public static void main(String[] args) {
      List<String> list = new ArrayList<>(Arrays.asList("A","B","C", "D"));
      System.out.println("List: " + list);
      Object[] items = list.toArray();
      for (Object object : items) {
         System.out.print(object + " ");
      }
      System.out.println();
      String[] characters = list.toArray(new String[list.size()]);
      for (String string : characters) {
         System.out.print(string + " ");
      }
   }
}

输出

这将产生以下结果 −

List: [A, B, C, D]
A B C D
A B C D

相关文章


有用资源