这是一个非常常见的异常,从名字上看是数组下标越界错误,解决方法就是查看为什么下标越界。
下面是一个错误示例:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2
at test4.State.nextStates(State.java:93)
at test4.State.main(State.java:478)
从这些提示信息中可以获取如下信息:
1、错误发生在93行
2、发生错误的时候,下标的值为2
接下来分析为什么下标值为什么是2就可以解决了。
之前文章写到这里就结束了,但是我看评论中还是有人问,再补充几句。
第一: 问题的原因是数组下标越界了,例如数组的元素个数是5,下标的范围应该是0..4,如果访问数组的时候下标不是0..4就会报在这样的错误。
第二:代码提示错误行就是发生错误的数组。
解决的方法:
先确认数组下标的正确范围,然后再检查调用的时候使用的下标值。
希望更够帮到你。