问答详情
源自:7-1 编程练习

请问哪里错了,不明白提示出错时什么意思

https://img3.mukewang.com/5c9662330001c17e09910673.jpg

不明白???

提问者:慕丝9243639 2019-03-24 00:43

个回答

  • 年少无为又自卑
    2019-03-24 13:51:59
    已采纳

    是数组下标超出范围异常,在scores.length那里,需要减一,即-1,因为length是计算数组的长度,数组的有多少数据length就是多少,上面数组有7个数据,那么length就是7,但是数组的下标是从0开始,那么7个数据的下标最大也只能到6,所以,直接俄用scores.length会被认为下标超出范围,就会出现异常。

  • 慕先生6779645
    2019-03-28 11:20:31

    除了超出范围的异常,你输出的结果应该不对;System.out.println(scores[i]);应该放在if(j>3){}后边,才能保证输出的是成绩前三

  • 3y20w
    2019-03-24 15:41:22

    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,所以数组越界。