java程序运行是出现错误提示:java.lang.ArrayIndexOutOfBoundsException: 0是什么原因?如何解决?

找别人开发的JAVA程序,以前一直运行正常,突然发生的这个情况,重起后依旧

java.lang.ArrayIndexOutOfBoundsException: 0
数组下标连0都越界了,唯一的原因是数组的维数为0
有两类数组初始化语句会导致这种情况发生
int[] a=new int[0];
int[] a={};

如果你的程序以前正常,现在变得不正常了,就只有一种情况了,那就是使用了int变量初始化数组,如
int[] a=new int[i];
这个i是一个变量,当i>0程序正常;当i等于零时并试图去访问a[0]就会出现你看到的异常

解决这个问题先必须找到被数组维数被初始化为0的原因
温馨提示:答案为网友推荐,仅供参考
第1个回答  2007-04-24
此异常是数组下标越界了.
比如:
String[] array1={"s","y"};
System.out.println(array1[3]);
此时就会出现此异常,你有没有看到后面有一个"0"呀,我感觉你的数组里根本没有数据也就是说:(比如:)
String[] aa={};
System.out.println(aa[0]);
第2个回答  2007-04-24
数组下标越界了.你看看你的数组长度,单步调试一下
第3个回答  2007-04-24
数组下标溢出
第4个回答  2007-04-24
找高手吧
相似回答