📜  java 将数组转换为列表 - Java (1)

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

Java将数组转换为列表

在Java中,有时需要将数组转换为列表。这种转换可以让您更方便地处理和操作数据。本文将介绍如何使用Java将数组转换为列表,并提供示例代码。

方法1:使用Arrays.asList()

Java 8及更早版本可以使用Arrays.asList()方法将数组转换为列表。这是最简单的方法之一,但需要注意一些限制。首先,它仅适用于基元类型的数组(如int [],double []等)和对象类型的数组(例如String [],Object []等)。其次,对返回的列表进行添加或删除操作会引发意外异常。因此,请确保您只需要在转换后的列表上进行迭代和修改。

示例代码:

String[] stringArray = {"apple", "banana", "orange"};
List<String> stringList = Arrays.asList(stringArray);
System.out.println(stringList);

输出:

[apple, banana, orange]
方法2:使用Stream API

Java 8及更高版本的Stream API还提供一种将数组转换为列表的方法。与Arrays.asList()相比,这种方法更灵活,并且可以在转换过程中执行其他操作。通过将数组转换为流,您可以使用Stream API方法(如map())来对列表进行映射,筛选或排序。

示例代码:

int[] intArray = {1, 2, 3, 4, 5};
List<Integer> intList = Arrays.stream(intArray)
                              .boxed()
                              .collect(Collectors.toList());
System.out.println(intList);

输出:

[1, 2, 3, 4, 5]
方法3:使用ArrayList构造函数

最后,您可以使用List的实现类ArrayList的构造函数将数组转换为列表。这种方法需要一些额外的代码,但可以在任何Java版本中使用,并且可以在转换过程中执行其他操作。

示例代码:

double[] doubleArray = {1.0, 2.0, 3.0, 4.0, 5.0};
List<Double> doubleList = new ArrayList<>();
for (double d : doubleArray) {
    doubleList.add(d);
}
System.out.println(doubleList);

输出:

[1.0, 2.0, 3.0, 4.0, 5.0]

现在,您已经学会了3种将数组转换为列表的方法。具体取决于您的需求和Java版本,您可以选择适合您的最佳方法。