【发布时间】:2012-01-13 07:00:42
【问题描述】:
在以下示例中:
class ZiggyTest2{
public static void main(String[] args){
int[] a = { 1, 2, 3, 4,7};
List<Integer> li2 = new ArrayList<Integer>();
li2 = Arrays.asList(a);
}
}
编译器抱怨 int[] 和 java.lang.Integer 不兼容。即
found : java.util.List<int[]>
required: java.util.List<java.lang.Integer>
li2 = Arrays.asList(a);
^
如果我更改列表定义以删除泛型类型,它工作正常。
List li2 = new ArrayList();
- 编译器不应该将整数自动装箱为整数吗?
- 如何从一个整数数组中创建一个
List<Integer>对象,使用 Arrays.asList()?
谢谢
【问题讨论】:
-
将数组定义为 Integer []a {1,2,4,5};
-
你也可以刚刚完成
Arrays.asList(1,2,3,4,7) -
当您在下一行再次丢弃它时,您不需要将
new ArrayList<Integer>()分配给 li2 -
谢谢大家。我对装箱/拆箱在上述场景中的工作方式更感兴趣。
标签: java generics collections