慕丝9243639
2019-03-24 00:43
不明白???
是数组下标超出范围异常,在scores.length那里,需要减一,即-1,因为length是计算数组的长度,数组的有多少数据length就是多少,上面数组有7个数据,那么length就是7,但是数组的下标是从0开始,那么7个数据的下标最大也只能到6,所以,直接俄用scores.length会被认为下标超出范围,就会出现异常。
除了超出范围的异常,你输出的结果应该不对;System.out.println(scores[i]);应该放在if(j>3){}后边,才能保证输出的是成绩前三
int [] scores = {89 , -23 , 64 , 91 , 119 , 52 , 73};
这里 scores 的获取值得方式是 scores[0],scores[1],scores[2],scores[3],scores[4],scores[5],scores[6]这七个值
但是你使用scores[scores.length] ,scores.length的值是7,所以数组越界。
Java入门第一季(IDEA工具)升级版
1165512 学习 · 17586 问题
相似问题