-1

可能重复:
ArrayIndexOutOfBoundsException

如何防止显示以下消息:

Test.main (Test.java:28) 处的线程“main”java.lang.ArrayIndexOutOfBoundsException 中的异常

编译此代码时:

int [ ] a = { 2, 7, 8, 9, 11, 16 };  
for ( int i = 0; i <= a.length; i++ ) 
      System.out.println( a[i] ); // line 28 of class Test.java
4

2 回答 2

4

尝试

for ( int i = 0; i <a.length; i++ ) 
  System.out.println( a[i] ); // line 28 of class Test.java

数组索引是从零开始的。即,数组索引从 0 开始到 ArrayLength-1

在您的情况下,要访问数组的最后一个索引,您必须执行a[a.length-1]. 因此你的循环条件应该是i<a.length

于 2012-11-11T22:09:16.623 回答
1

数组中的最后一个索引是a.length - 1这样,您可以使用:

for (int i = 0; i < a.length; i++)
于 2012-11-11T22:09:18.697 回答