如何在没有警告/错误的情况下将数组转换为ArrayList?

Bha*_*axy 4 java arrays arraylist compiler-warnings

所以,我有点问题.我正在尝试将整数数组(被调用list)转换为ArrayList(被调用arrList).下面显示的代码工作正常:

java.util.ArrayList arrList = new java.util.ArrayList(Arrays.asList(list));
Run Code Online (Sandbox Code Playgroud)

但是,编译时会出现一个警告:上面的行报告为使用"未经检查或不安全的操作".

不幸的是,我似乎无法处理这个警告.由于这是家庭作业,因此部分标准是无警告.有没有什么办法可以将数组转换为没有警告/错误的ArrayList?

小智 34

确保您使用正确的"数组"导入.默认情况下,我的Eclipse将尝试导入"edu.emory.mathcs.backport.java.util".确保它只是标准的"java.util"版本,你应该做类似的事情:

    String[] arr = new String[]{"one", "two", "three"};
    List<String> list = Arrays.asList(arr);
Run Code Online (Sandbox Code Playgroud)

  • 谢谢...谢谢.接受的答案是开玩笑,谁会这样做以避免这样的警告. (4认同)
  • 绝对应该是接受的答案! (2认同)

mad*_*nce 5

Collections.addAll(targetList, sourceArray); 
Run Code Online (Sandbox Code Playgroud)

尝试上述解决方案。它应该工作


Kep*_*pil 1

由于您的list似乎是一个数组int而不是数组Integer,因此您需要循环它们。请尝试以下操作:

List<Integer> intList = new ArrayList<Integer>(list.length);
for (int i: list) {
  intList.add(i);
}
Run Code Online (Sandbox Code Playgroud)