Java ArrayList toArray()方法将一个arraylist转换为一个数组并返回它。
toArray() 方法的语法为:
arraylist.toArray(T[] arr)
T [] arr(可选)- 用于存储arraylist元素的数组
注意:这里,T指定数组的类型。
如果将参数T[]arr传递给方法,则返回T类型的数组
如果未传递参数,则返回Object类型的数组
import java.util.ArrayList; class Main { public static void main(String[] args) { ArrayList<String> languages= new ArrayList<>(); //添加元素到 ArrayList languages.add("Java"); languages.add("Python"); languages.add("C"); System.out.println("ArrayList: " + languages); //创建一个新的String类型数组 //数组的大小与ArrayList相同 String[] arr = new String[languages.size()]; //将ArrayList转换为数组 languages.toArray(arr); //打印数组的所有元素 System.out.print("Array: "); for(String item:arr) { System.out.print(item+", "); } } }
输出结果
ArrayList: [Java, Python, C] Array: Java, Python, C,
在上面的示例中,我们创建了一个名为languages的数组列表。注意这一行,
languages.toArray(arr);
在这里,我们传递了一个String类型数组作为参数。因此,arraylist的所有元素都存储在数组中。
注意:作为参数传递的数组的大小应等于或大于arraylist。因此,我们使用了ArrayList size()方法来创建与arraylist大小相同的数组。
import java.util.ArrayList; class Main { public static void main(String[] args) { ArrayList<String> languages= new ArrayList<>(); //添加元素到 ArrayList languages.add("Java"); languages.add("Python"); languages.add("C"); System.out.println("ArrayList: " + languages); //将ArrayList转换为数组 //方法没有参数 Object[] obj = languages.toArray(); //打印数组的所有元素 System.out.print("Array: "); for(Object item : obj) { System.out.print(item+", "); } } }
输出结果
ArrayList: [Java, Python, C] Array: Java, Python, C,
在上面的示例中,我们使用了toArray()将arraylist转换为数组的方法。在此,该方法不包括可选参数。因此,将返回对象数组。
注意:建议使用toArray()带有参数的方法。