跳到主要内容

Java ArrayList toArray() 方法

toArray() 方法的语法是:

arraylist.toArray(T[] arr)

这里,arraylistArrayList 类的一个对象。

toArray() 参数

toArray() 方法可以接受单个参数。

  • T[] arr (可选)- 一个数组,用于存储 arraylist 的元素

注意:这里的 T 指的是数组的类型。

toArray() 返回值

  • 如果传递了参数 T[] arr,则返回 T 类型的数组
  • 如果没有传递参数,则返回 Object 类型的数组

示例 1:带参数的 ArrayList toArray() 方法

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 同样大小的 String 类型数组
String[] arr = new String[languages.size()];

// 将 ArrayList 转换为数组
languages.toArray(arr);

// 打印数组中的所有元素
System.out.print("数组: ");
for(String item:arr) {
System.out.print(item + ", ");
}
}
}

输出

ArrayList: [Java, Python, C]
数组: Java, Python, C,

在上述示例中,我们创建了一个名为 languages 的 arraylist。注意这一行,

languages.toArray(arr);

这里,我们传递了一个 String 类型的数组作为参数。因此,arraylist 的所有元素都存储在了数组中。

注意:作为参数传递的数组大小应等于或大于 arraylist 的大小。因此,我们使用了 ArrayList size() 方法来创建与 arraylist 同样大小的数组。

示例 2:不带参数的 ArrayList toArray() 方法

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("数组: ");
for(Object item : obj) {
System.out.print(item + ", ");
}
}
}

输出

ArrayList: [Java, Python, C]
数组: Java, Python, C,

在上述示例中,我们使用了 toArray() 方法将 arraylist 转换为数组。这里,该方法没有包含可选参数。因此,返回了一个对象数组。

注意:建议使用带参数的 toArray() 方法。