将 List 转换为 Array

JavaJavaBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

介绍

在本实验中,我们将学习如何在 Java 中将 List 转换为数组。List 是一种线性数据结构,用于存储数据,而数组是一种索引数据结构,用于存储相似类型的数据。我们将使用 List 接口的 toArray() 方法,该方法返回一个对象数组。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL java(("`Java`")) -.-> java/DataStructuresGroup(["`Data Structures`"]) java(("`Java`")) -.-> java/ObjectOrientedandAdvancedConceptsGroup(["`Object-Oriented and Advanced Concepts`"]) java(("`Java`")) -.-> java/FileandIOManagementGroup(["`File and I/O Management`"]) java/DataStructuresGroup -.-> java/arrays("`Arrays`") java/DataStructuresGroup -.-> java/collections_methods("`Collections Methods`") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/classes_objects("`Classes/Objects`") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/arraylist("`ArrayList`") java/FileandIOManagementGroup -.-> java/stream("`Stream`") subgraph Lab Skills java/arrays -.-> lab-117424{{"`将 List 转换为 Array`"}} java/collections_methods -.-> lab-117424{{"`将 List 转换为 Array`"}} java/classes_objects -.-> lab-117424{{"`将 List 转换为 Array`"}} java/arraylist -.-> lab-117424{{"`将 List 转换为 Array`"}} java/stream -.-> lab-117424{{"`将 List 转换为 Array`"}} end

创建一个 List

我们将创建一个蔬菜的 List 并打印其元素。

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

public class Main {
    public static void main(String[] args) {
        List<String> vegetables = new ArrayList<>();
        vegetables.add("Carrot");
        vegetables.add("Potato");
        vegetables.add("Tomato");
        System.out.println("Vegetables List: " + vegetables);
    }
}

使用以下命令编译并运行上述代码。

javac Main.java && java Main

将 List 转换为 Array

现在我们将使用 toArray() 方法将 List 转换为数组。toArray() 方法返回一个 Object 类型的数组。因此,如果你想获取另一种类型的数组,可以将该类型的对象作为参数传递。

//Conversion List to Array
String[] newArray =  vegetables.toArray(new String[0] );
System.out.println("New Array: " + newArray);
for (int i = 0; i < newArray.length; i++) {
    System.out.println(newArray[i]);
}

使用以下命令编译并运行上述代码。

javac Main.java && java Main

使用 Stream() 方法转换

如果你使用的是 Java 8 或更高版本,那么你可以使用 stream() 方法获取元素的流,然后使用方法引用语法从列表中获取字符串类型元素的数组。

//Conversion List to Array with Stream Method
String[] newArray =  vegetables.stream().toArray(String[]::new);
System.out.println("New Array: " + newArray);
for (int i = 0; i < newArray.length; i++) {
    System.out.println(newArray[i]);
}

使用以下命令编译并运行上述代码。

javac Main.java && java Main

直接使用 toArray() 方法转换

如果你使用的是最新的 Java 版本,那么你可以直接从列表中获取数组,而无需使用 stream() 方法,直接使用 toArray() 方法即可。

//Conversion List to Array without using stream() method
String[] newArray =  vegetables.toArray(String[]::new);
System.out.println("New Array: " + newArray);
for (int i = 0; i < newArray.length; i++) {
    System.out.println(newArray[i]);
}

使用以下命令编译并运行上述代码。

javac Main.java && java Main

总结

在本实验中,我们学习了如何在 Java 中将 List 转换为数组。我们使用了 List 接口的 toArray() 方法将 List 转换为数组。我们还学习了多种将 List 转换为数组的方法,例如使用 stream() 方法或直接使用 toArray() 方法。

您可能感兴趣的其他 Java 教程