java - Java 中数组越界错误

标签 java

我是 Java 新手,我编写了一个简单的程序来计算 10 以下 3 的倍数之和。 我不确定为什么会出现数组越界异常

int a[] = {},j = 0,sum = 0;
        for(int i=1;i<=10;i++)
        {
            if ((i % 3) == 0)
            {
            a[j] = i; // Here, i am getting the exception
            j++;
            }
        }
        for(int i1=0;i1<j;i1++)
        {
            sum = sum + a[i1];
        }
        System.out.println(sum);
     }

最佳答案

这是解决方案。您只是缺少定义数组的大小。希望它有帮助:)。

public final class Program {

public static void main(String[] args) {

    int a[] = new int[10] , j = 0, sum = 0;
    for (int i = 1; i <= 10; i++) {
        if ((i % 3) == 0) {
            a[j] = i; // Here, i am getting the exception
            j++;
        }
    }
    for (int i1 = 0; i1 < j; i1++) {
        sum = sum + a[i1];
    }
    System.out.println(sum);
}
}

关于java - Java 中数组越界错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36512254/

相关文章:

Java PrintWriter 文件未找到

java - 更改类的名称

java - 较新版本的 Hibernate 中的 Criterion#ignoreCase

java通过受信任的服务器交换公钥

java - JSF 2.0 问题(faces-config)

java - BadPaddingException:android 解密 block 中的填充 block 已损坏

java - 为什么我们在 Struts 2 中使用PrincipalAware

java - 设置日历时,DAY_OF_WEEK不正确

java - 在 Java 中扫描整个用户输入以查找匹配的关键字

java - 使用逗号和 "-"将字符串拆分为整数列表