Object arr = new int[]{1,2,3};
arr = (int[])arr;
int someArr [] = (int[])arr;
for(int i:arr) // compilation error
System.out.println(i);
for(int i:someArr) //works fine
System.out.println(i);
为什么第二行的演员表不会将 arr 转换为 int 数组?我在第 4 行收到一个编译错误,上面写着“只能迭代一个数组或一个实例java.lang.Iterable
”。调试时,在第 2 行,变量快照显示带有索引值的 arr。