我们能将 Java 数组转换为列表吗?

javaobject oriented programmingprogramming更新于 2024/12/29 13:32:17

我们可以使用 Arrays.asList() 方法轻松地将 Java 数组转换为 List。

语法

public static <T> List<T> asList(T... a)

返回由指定数组支持的固定大小列表。(将返回的列表更改为"写入"数组。)此方法与 Collection.toArray() 结合使用,充当基于数组和基于集合的 API 之间的桥梁。返回的列表是可序列化的并实现 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};

      // 从数组中获取可变列表
      List<Integer> list = new ArrayList<>(Arrays.asList(array));
      list.add(7);
      System.out.println("List: " + list);

      // 从数组中获取不可变列表
      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)

相关文章


有用资源