为了账号安全,请及时绑定邮箱和手机立即绑定

大佬求助!!为什么我的“求成绩前三名”程序报输出异常

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 7
    at imooc.HelloWorld.sorts(HelloWorld.java:22)
    at imooc.HelloWorld.main(HelloWorld.java:12)

下面是代码段

package imooc;
import java.util.Arrays;
public class HelloWorld {   
    //完成 main 方法
    public static void main(String[] args) {
        int scores[]={89,-23,64,91,119,52,73};      
        HelloWorld hello = new HelloWorld();
        hello.sorts(scores);
    }
    //定义方法完成成绩排序并输出前三名的功能 
     public void sorts(int[] score){
         Arrays.sort(score);
         int[] a={0,0,0};
         int temp=0;
         for(int i=score.length;i>=0;i--){
             if(score[i]>=0&&score[i]<=100&&temp<3){
                 a[temp]=score[i];
                 temp++;
             }
         }
         System.out.println("考试成绩前三名:");
         System.out.println(a[0]);
         System.out.println(a[1]);
         System.out.println(a[2]);
     }  
}

正在回答

2 回答

for循环那,int i=score.length应该为int i=score.length-1吧,要不然溢出了

1 回复 有任何疑惑可以回复我~
#1

阳光我的挚爱 提问者

嘿嘿!谢了谢了
2018-05-31 回复 有任何疑惑可以回复我~


上面已经解决,如果有萌新复制代码请把代码段的包名(package imooc;)去掉哦,那样才能在慕课运行

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

大佬求助!!为什么我的“求成绩前三名”程序报输出异常

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信