添加两个元素等于下一个元素

时间:2017-04-09 08:24:32

标签: java arrays

import java.io.*;

public class Array {

    public static void main(String args[]) {

        int i = 0;
        int add = 0;

        int a[] = {4, 1, 1, -6};

        for (i = 0; i < a.length; i++) {
            add = add + a[i];

            if (add - a[i + 1] == 0) {
                System.out.println("exist");

            }
        }

    }
}

我收到如下错误:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 4
    at Arraylist1.main(Arraylist1.java:21)

1 个答案:

答案 0 :(得分:1)

因为您已经在索引中增加了索引:

if (add - a[i + 1] == 0) {
//----------^---^

要解决您的问题,您必须迭代到a.length - 1而不是a.length,因为最后一个索引是3,所以当您尝试获取a[3+1]时,它会抛出ArrayIndexOutOfBoundsException异常,因为此索引不是退出