IndexArrayOutOfBoundsException问题。不确定错误在哪里?

时间:2016-04-05 00:33:58

标签: java

所以我有一个数组,我分配存储5个整数,然后取这些整数并将它们乘以另一个变量(cyclicNum)但是我不断得到一个ArrayOutOfBoundsException错误。有人可以解释问题所在吗?据我所知,虽然我可能错了,但我并没有超出给定指数的范围。我在第二个循环中硬编码了一个2,其中我的cyclicNum变量将进行测试并仍然得到相同的错误。这是我到目前为止的代码:

    Scanner prompt = new Scanner(System.in);

    System.out.print("Enter a number to perform cyclic computation on: ");

    int cyclicNum = prompt.nextInt();

    System.out.println("Enter how many numbers you would like to multiply by: ");

    int length = prompt.nextInt();

    System.out.println("Enter the numbers: ");

    int[] multiples = new int[length];

    for(int i = 0; i < multiples.length; i++){
        multiples[i] = prompt.nextInt();
    }

    for(int j = 0; j < multiples.length; j++){
        System.out.println(multiples[j * 2]);
    }

1 个答案:

答案 0 :(得分:0)

最后的外观得到数组元素j * 2,它将超出j / 2的范围。

如果倍数的长度是5,那么循环尝试访问的索引元素是0,2,4,6,8,最后两个超出数组的长度。