void c()
{
int a[] = {1,2,3,4,5,6,7};
for(int i :a)
{
System.out.println(i);
}
}
与
void c()
{
int a[] = {1,2,3,4,5,6,7};
for(int i :a)
{
System.out.println(a[i]);
}
}
两种不同的方式输出,但是第二种出现错误提示,说数据越界
原因:在这种循环的写法下,i获取的是数组a中的每一个元素的值,而不是数组的下标,当读取到a[6]时,i= 7;这时输出a[7]发生越界。
本文对比了两种Java数组遍历方法,一种使用增强for循环正常输出数组元素,另一种尝试使用相同循环结构但试图通过索引访问元素导致数组越界错误。文章详细解释了为何在增强for循环中直接使用变量作为索引会导致错误,并提供了正确的遍历数组的方法。
2144

被折叠的 条评论
为什么被折叠?



