Java 可以将数组转换为列表吗
我们可以使用Arrays.asList()方法将Java数组轻松地转换为列表。
语法
public static <T> List<T> asList(T... a)
返回由指定数组支持的固定大小的列表。(对返回的列表进行的更改会“写入”到数组中。)该方法作为基于数组和基于集合的API之间的桥梁,与Collection.toArray()结合使用。返回的列表是可序列化的,并实现了RandomAccess。
类型参数
- T −数组的运行时类型。
参数
- a −将支持列表的数组。
返回值
指定数组的列表视图。
示例
以下示例显示如何使用Arrays.asList()方法获取不可变和可变列表。
package com.tutorialspoint;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class CollectionsDemo {
public static void main(String[] args) {
Integer[] array = {1,2,3,4,5,6};
// Get a mutable list from array
List<Integer> list = new ArrayList<>(Arrays.asList(array));
list.add(7);
System.out.println("List: " + list);
// Get immutable list from array
List<Integer> list1 = Arrays.asList(array);
try {
list1.add(7);
} catch(Exception e) {
e.printStackTrace();
}
System.out.println("List: " + list1);
}
}
输出
这将产生以下结果−
List: [1, 2, 3, 4, 5, 6, 7]
List: [1, 2, 3, 4, 5, 6]
java.lang.UnsupportedOperationException
at java.util.AbstractList.add(AbstractList.java:148)
at java.util.AbstractList.add(AbstractList.java:108)
at com.tutorialspoint.CollectionsDemo.main(CollectionsDemo.java:19)