【问题标题】:How to solve this ArrayList issue? [duplicate]如何解决这个 ArrayList 问题? [复制]
【发布时间】:2020-06-12 06:56:00
【问题描述】:

我在网上搜索了一下,我正在做的似乎是标准的转换操作,但它仍然告诉我:

Cannot resolve constructor 'ArrayList(java.util.List<T>)'

以同样的方式完成字符串数组转换也没有问题。这是我的代码:

public class Main {

    public static void main(String[] args) {
        int[] arr = {1, 10, 1, 30, 50, 30};
        ArrayList<Integer>  arrList = new ArrayList<Integer>(Arrays.asList(arr));
        System.out.println(arrList);
    }
}

有什么想法吗?

【问题讨论】:

  • 您是否同时包含 import java.util.ArrayListimport java.util.Arrays
  • 元素类型必须相同:Integer vs int
  • 请注意,由于原始数组没有自动装箱,Arrays.asList(arr) 将创建 List&lt;int[]&gt; 而不是 List&lt;Integer&gt;
  • 这能回答你的问题吗? Converting array to list in Java
  • 在我的机器上,我使用的是 Java 8(目标兼容性 1.8),它编译时没有问题,所以可能针对您的情况的解决方案是将目标升级到较新的 Java 版本

标签: java arrays


【解决方案1】:

这应该可行:

public static void main(String []args){
    Integer[] arr = {1, 10, 1, 30, 50, 30};
    ArrayList<Integer>  arrList = new ArrayList<Integer>(Arrays.asList(arr));
    System.out.println(arrList);
}

【讨论】:

  • 谢谢,这绝对是最简单的方法了。
【解决方案2】:

请注意,由于原始数组没有自动装箱,Arrays.asList(arr) 将创建 List&lt;int[]&gt; 而不是 List&lt;Integer&gt;

如果您想将该数组转换为 List&lt;Integer&gt;,请尝试以下操作:

//instead of boxed() you could use one of the mapToXX methods 
List<Integer>  arrList = Arrays.stream(arr).boxed().collect(Collectors.toList());

【讨论】:

    【解决方案3】:

    ArrayList&lt;Integer&gt; 构造函数将 Integer 作为 对象 而不是原始数组。 您对字符串没有问题,因为字符串已经是引用类型(对象)。 您需要做的就是将数组arr 创建为整数。

    Integer[] arr = new Integer[] {1, 10, 1, 30, 50, 30};
    

    【讨论】:

      【解决方案4】:

      希望下面的代码对你有所帮助。

              int[] arr = {1, 10, 1, 30, 50, 30};
              ArrayList<Integer> arrList = IntStream.of(arr)
                      .boxed().collect(Collectors.toCollection(ArrayList::new));
              System.out.println(arrList);
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-08-22
        • 1970-01-01
        • 2021-07-06
        • 2021-04-30
        • 1970-01-01
        • 2014-08-12
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多