<span style="font-size:14px;">
</span>
学习Java SE的过程中,ArrayList在转换为Integer数组的时候发生了错误。我们知道,ArrayList有个方法是toArray(),但是当使用这段代码时却报错了
<pre name="code" class="java"><span style="font-size:14px;">Integer[] in = (Integer[]) list.toArray();
for (int i=0; i<in.length; i++) {
System.out.println(in[i].intValue());
}</span>
报错是:
<span style="font-size:14px;">Exception in thread "main" java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.Integer;
at com.baidu.ArrayListTest4.main(ArrayListTest4.java:17)</span>
<span style="font-size:14px;">Integer[] in = (Integer[]) list.toArray(new Integer[0]);
for (int i=0; i<in.length; i++) {
System.out.println(in[i].intValue());
}</span>
前后对照下,就是新new一个Integer[0]数组就行,虽然不知道为什么,但是记住就好。