小编Mat*_*eau的帖子

For-Each循环Java错误ArrayIndexOutOfBoundsException

在我的程序中,我需要一个for-each循环,它计算给定数组中的均数,并为每个循环增加变量even.当我使用标准for循环时,即(i = 0; i < numbers.length; i++;)代码工作正常.但是,我的作业要求我为这个特定问题使用for-each循环.难道我做错了什么?

int [] numbers = new int[8];
int even = 0;
int odd = 0;

for (int i = 0; i < numbers.length; i++) { 
    numbers[i] = (int)(Math.random() * 51 + 50);
}

for (int i : numbers) {
    if (numbers[i] % 2 == 0) {
        even++;
    }
    else
        odd++;
Run Code Online (Sandbox Code Playgroud)

这会引发错误:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 54
Run Code Online (Sandbox Code Playgroud)

java arrays foreach for-loop

6
推荐指数
2
解决办法
610
查看次数

标签 统计

arrays ×1

for-loop ×1

foreach ×1

java ×1