【发布时间】:2016-04-21 13:49:21
【问题描述】:
我想使用 foreach 循环打印数组中的所有元素
int[] array={1,2,3,4,5};
for(int i:array)
System.out.println(array[i]);
编译器给了我这个错误/警告
线程“main”中的异常 java.lang.ArrayIndexOutOfBoundsException: 5
但是当我打印别的东西时
int[] array={1,2,3,4,5};
for(int i:array)
System.out.println("Print something");
它写了五次“打印一些东西”并且没有给出警告/错误。
我认为它必须做一些事情,数组中的第一个元素的索引为 0,但我不确定。
谁能解释一下原因?
【问题讨论】:
-
您确定这正是导致问题的代码吗?
-
@Jean-BaptisteYunès
array[i]for each 循环是问题所在。 -
哦,是的!我错过了重点!我太傻了……
-
i迭代值而不是索引...