课程
/后端开发
/Java
/Java入门第三季
}//抛出ArrayIndexOutOfBoundsException
2019-12-31
源自:Java入门第三季 2-6
正在回答
int len = str.length();
while(len>=3){
len = len - 3;
str.insert(len,",");
}
int i = str.length(); while (i >= 0) { if (i >= 3) { i -= 3; str.insert(i, ','); } else { System.out.println(str); break; } }
改下
当while判断的i比3小时在判断语句的else内 : 语句(i-=3)则会出现负值,此时,语句 str.insert(i, ',') 找不到对应得数组下标,系统出现数组越界异常提示。
改正:把第3行的代码 if(i<=0) 改为 if(i<=3)即可解决越界问题。
举报
Java中你必须懂得常用技能,不容错过的精彩,快来加入吧
1 回答为什么说while循环抛出异常了 怎么看出来的
1 回答为何会越界异常
1 回答循环中抛出异常后,未完成的循环会不会继续运行
2 回答为什么会抛出空指针异常?
2 回答声明抛出异常为什么还会出错