📜  如何在Java中将 LinkedList 转换为数组?(1)

📅  最后修改于: 2023-12-03 14:52:45.505000             🧑  作者: Mango

如何在Java中将 LinkedList 转换为数组?

在Java中,LinkedList是一种常见的数据结构,它可以存储任意类型的数据,比如整数、字符串等。有时候,我们需要将LinkedList转换为数组,以便更方便地进行操作。

方法一:使用toArray()方法

Java中的LinkedList类提供了一个toArray()方法,可以将LinkedList转换为数组。需要注意的是,toArray()方法返回的是一个Object类型的数组,需要进行类型转换。

以下是示例代码:

import java.util.LinkedList;

public class LinkedListToArrayExample {
    public static void main(String[] args) {
        LinkedList<String> linkedList = new LinkedList<>();
        linkedList.add("apple");
        linkedList.add("banana");
        linkedList.add("orange");

        String[] array = linkedList.toArray(new String[linkedList.size()]);

        for (String element : array) {
            System.out.println(element);
        }
    }
}

在上述代码中,我们创建了一个LinkedList对象,并向其中添加了三个字符串元素。然后,我们使用toArray()方法将LinkedList转换为了一个String类型的数组,并循环输出了每个元素。

需要注意的是,toArray()方法的参数是一个空的数组对象,长度等于LinkedList的大小。这里使用了new String[linkedList.size()],表示创建了一个空的String类型的数组。

方法二:使用集合转换工具类

除了使用LinkedList自带的toArray()方法外,我们还可以使用集合转换工具类来将LinkedList转换为数组。这种方法更加简洁易懂,代码也更加优雅。

以下是示例代码:

import java.util.LinkedList;
import java.util.List;

import org.apache.commons.collections4.CollectionUtils;

public class LinkedListToArrayExample {
    public static void main(String[] args) {
        LinkedList<String> linkedList = new LinkedList<>();
        linkedList.add("apple");
        linkedList.add("banana");
        linkedList.add("orange");

        String[] array = CollectionUtils.toArray(linkedList, String.class);

        for (String element : array) {
            System.out.println(element);
        }
    }
}

在上述代码中,我们首先创建了一个LinkedList对象,并向其中添加了三个字符串元素。然后,我们使用org.apache.commons.collections4.CollectionUtils类的toArray()方法将LinkedList转换为了一个String类型的数组,并循环输出了每个元素。

需要注意的是,这里的toArray()方法的第二个参数是Class类型的,表示要转换成的数组元素类型。在上述代码中,我们将它设置为String.class。

这里使用了Apache Commons Collections工具类库中的CollectionUtils类,需要进行依赖导入。

结论

通过本文介绍,我们学习了两种将LinkedList转换为数组的方法。无论是使用LinkedList自带的toArray()方法,还是使用集合转换工具类,都可以实现这个功能。根据具体的项目需求和开发习惯,可以选择其中一种方法。