我已经定义了一个用12个元素初始化的数组,但是它的 length 属性的值被JVM设置为10,我无法访问第11和第12个元素。我该怎么做才能解决问题? 假设此数组定义如下:
private static final Type[] p = new Type[]{ null, null, null, null, null, null, null, null, null, null, null, null };
在某些函数中我使用Type x = p [11];然后我得到了上面的异常
答案 0 :(得分:0)
public static void main(String[] args) {
int[] arr ={1,2,3,4,5,6,7,8,9,10,11,12};
System.out.println(arr[11]);
}
这将打印12.数组索引从0开始到arr.lenghth-1。因此,如果您想访问arr [12],您将获得java.lang.ArrayIndexOutOfBoundsException。
public class SetTest {
private static final String[] arr1 = { null, null, null, null, null, null,
null, null, null, null, null, null };
public static void main(String[] args) {
String p = arr1[11];
System.out.println(p);
System.out.println(arr1.length);
}
}
输出:
null
12