Java 中将列表转换为 ArrayList

在本指南中,我们讨论了如何在 Java 中将列表转换为 ArrayList。但在我们进入它之前,你应该熟悉 Java 中的一些基本概念。你需要了解列表是由接口 Collection 实现的,而 ArrayListList 的一个实现类。

在 Java 中将 List 转换为 ArrayList

让我们看看下面的例子。

import java.util.*;
public class Hello
{
    public static void main(String[] args)
    {
        //Let's make a List first.
        List<String>  MyList = (List<String>) Arrays.asList("Hello","World");
    }
}

如你所见,上面的 List 包含两个字符串元素。此处,Arrays.asList 是一种静态方法,用于将对象数组转换为 List。让我们看看如何将这个 List 转换为一个 ArrayList

了解有关数组类的更多信息此处。

import java.util.*;
public class Hello
{
    public static void main(String[] args)
    {
        //Let's make a List first.
        List<String>  MyList = (List<String>) Arrays.asList("Hello","World");
        ArrayList<String> a1 = new ArrayList<String>(MyList);
    }
}

通过这种方法,我们实际上是在初始化具有其预定义值的 ArrayList。我们只是使用 Arrays.asList 静态方法创建了一个包含两个元素的列表。后来我们使用了 ArrayList 的构造函数并用预定义的值实例化它。了解更多关于 ArrayList 及其方法和其他属性。

换句话说,我们有一个包含元素的数组,并将其转换为 List,然后将该列表转换为 ArrayList。查看下面的示例以了解发生了什么。

import java.util.*;
public class Hello
{
    public static void main(String[] args)
    {
        String arr[]={"1","2","3"};
        List<String>  MyList = (List<String>) Arrays.asList(arr);
        //now we are converting list into arraylist
        ArrayList<String> a1 = new ArrayList<String>(MyList);
        for(int i=0; i<a1.size(); i++)
        {
            System.out.println(a1.get(i));
        }
    }
}

在上面的程序中,我们首先创建了一个带有初始化值的 Array。后来,就像在第一个例子中一样,我们传递了一个数组,而不是给值,我们使用 Arrays.asList 将这个对象数组转换为 List

你从 Arrays.asList 获得的列表不可修改。它只是一个包装器,你不能在它上面添加或删除。即使你尝试,你也会得到

UnsupportedOperationException

这里的问题是将列表转换为 ArrayList,因此我们从 List 实例化了 ArrayList。上述程序的输出:

1
2
3

这就是在 Java 中将 List 转换为 ArrayList 的方法。