Java 数组索引越界异常基本
当我编译这个程序时,它没有错误,但是当我运行它时,我得到一个越界错误。有什么帮助吗?谢谢 准确的误差如下: 主线程java.lang.ArrayIndexOutOfBoundsException中的异常:4 在javaapplication.javaapplication.mainJavaApplication.java:32 C:\Users\Juwon\AppData\Local\NetBeans\Cache\8.2\executor snippets\run.xml:53:Java返回:1 生成失败总时间:0秒 为了;i.长度;i++; 分号是这里的麻烦制造者。Java 数组索引越界异常基本,java,Java,当我编译这个程序时,它没有错误,但是当我运行它时,我得到一个越界错误。有什么帮助吗?谢谢 准确的误差如下: 主线程java.lang.ArrayIndexOutOfBoundsException中的异常:4 在javaapplication.javaapplication.mainJavaApplication.java:32 C:\Users\Juwon\AppData\Local\NetBeans\Cache\8.2\executor snippets\run.xml:53:Java返回:1
这导致变量i大于数组的最后一个索引。因此出现了越界例外 正如Elliot所说,删除for循环末尾的分号,代码应该可以正常工作。在for循环中初始化计数器变量也是常见的做法。for循环头应该如下所示
for(int i = 0;i<grades.length;i++)
你确定你发布了相同的代码吗;iIt编译只意味着它没有语法错误。这并不意味着它没有逻辑错误。数组索引超出边界意味着您已在数组的任一端运行完。。使用调试器逐步完成代码将向您显示问题所在的位置。
for (int i = 0; i < grades.length; i++) {
System.out.println(i);
System.out.printf("%d\t%s\t%d\n", i, Students[i], grades[i]);
sum += grades[i];
}
for(;i<grades.length;i++);
for(int i = 0;i<grades.length;i++)