Java 可以将列表转换为数组吗
List提供了两种方法将List转换为数组。
1. 使用没有参数的toArray()方法
Object[] toArray()
返回值
包含此列表中所有元素的数组,顺序正确。
2. 使用 toArray() 和数组
<T> T[] toArray(T[] a)
参数
- a −如果大到足够存储此列表的元素,则将其存储到数组中;否则会为此目的分配一个相同运行时类型的新数组。
返回值
包含此列表元素的数组。
抛出异常
- ArrayStoreException −如果指定数组的运行时类型不是此列表中每个元素的运行时类型的超类型。
-
NullPointerException −如果指定数组为空。
示例
以下示例演示了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[0]);
for (String string : characters) {
System.out.print(string + " ");
}
}
}
输出
这将产生以下结果−
List: [A, B, C, D]
A B C D
A B C D