数组下标检查的坑?

int[] a = new int[]{25,6,56,17,8};

for (int i=1; i<5; i++) {

int temp = a[i];

int xia = i-1;

while( xia>=0 && temp<a[xia] )  //这个能正常运行,对的

//while( temp<a[xia] && xia>=0 )  //这个会报错。。。Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -1 真令人摸不着头脑

{

a[xia+1] = a[xia];

xia--;

}

a[xia+1] = temp;

}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容