java.lang.ArrayIndexOutOfBoundsException产生的原因

String test = "wangguoshun";

char[] array = test.toCharArray();

for(int i=array.length;i>=0;i--){

  system.out.println(array[i]);

}

报错:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 11

原因:array.length是从1开始计数,长度为11.

循环的时候

逆序的情况下是从十一的下标开始循环,没有11这个下标array[11],所以就直接报错。

顺序的情况下是从零开始,一直循环到十一的时候报数组下标越界。

原因:java中的数组分配是从0到它的length-1的空间

原文地址:https://www.cnblogs.com/21heshang/p/7341575.html