📜  Java程序将LinkedList转换为数组,反之亦然(1)

📅  最后修改于: 2023-12-03 15:32:05.188000             🧑  作者: Mango

Java程序将LinkedList转换为数组,反之亦然

LinkedList和数组是Java中非常常用的数据结构。有时候需要将一个LinkedList转换为数组,或者将一个数组转换为LinkedList。下面是示例代码及解释。

将LinkedList转换为数组

代码片段及解释:

import java.util.LinkedList;

public class LinkedListToArray {

    public static void main(String[] args) {
        LinkedList<String> linkedList = new LinkedList<>();
        linkedList.add("one");
        linkedList.add("two");
        linkedList.add("three");

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

        for (int i = 0; i < array.length; i++) {
            System.out.println(array[i]);
        }
    }
}

上述代码中,我们先创建了一个LinkedList对象,向其中添加了三个String类型的元素。接着,调用linkedList的toArray方法,将linkedList转换为数组。需要注意的是,如果我们传入一个大小为0的数组,则会在toArray方法中创建一个新数组,并将linkedList转换到这个新数组中。最后,通过循环遍历数组,打印出每个元素。

将数组转换为LinkedList

代码片段及解释:

import java.util.Arrays;
import java.util.LinkedList;

public class ArrayToLinkedList {

    public static void main(String[] args) {
        String[] array = { "one", "two", "three" };

        LinkedList<String> linkedList = new LinkedList<>(Arrays.asList(array));

        for (String s : linkedList) {
            System.out.println(s);
        }
    }
}

上述代码中,我们先创建了一个String类型的数组。接着,调用Arrays类的asList方法将这个数组转换为一个List。由于我们需要创建一个LinkedList对象而非List对象,所以将这个List传递给LinkedList的构造函数即可。最后,通过增强for循环遍历linkedList,打印出每个元素。

总结:

  • LinkedList和数组可以相互转换。
  • 将LinkedList转换为数组需要调用LinkedList的toArray方法,将数组作为参数传入。
  • 将数组转换为LinkedList需要使用Arrays类的asList方法,将数组转换为List后再使用LinkedList的构造函数将其转换为LinkedList对象。