考虑以下代码:
import java.util.*;
public class ArrayQuestion{
public static void main(String[] args){
List<String> list = new ArrayList<>();
list.add("Chocolate");
list.add("Vanilla");
//Converting the List to an Array
Object[] objectArray = list.toArray();
所以 toArray 方法返回一个默认类型 Object[] 的数组。假设我想创建一个 String 数组,我读到我会将一个 string[] 对象传递给 toArray 方法。
String[] stringArray = list.toArray(new String[0]);
我读到为参数指定大小为 0 的好处是 Java 将为返回值创建一个大小合适的新数组。
有人可以解释一下吗,我在 Java API 中查找了 toArray(String[] stringArray) 方法。我仍然不明白上述语句所暗示的返回值是什么。
我的问题特别是关于传递给 toArray 方法的参数以及为什么它是 0 以及传递 0 如何创建一个适当大小的列表的数组。