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

请问看看什么问题

import java.util.Arrays;

public class HelloWorld {

    

    //完成 main 方法

    public static void main(String[] args) {

      int[] scores = {89,-23,64,91,119,52,73};

      System.out.println("考试成绩前三名为:");

      HelloWorld hello = new HelloWorld();

      hello.show(scores);

      

        

        

    }

    

    //定义方法完成成绩排序并输出前三名的功能

    public void show (int[] scores){

        

        Arrays.sort(scores);

        int num = 0;

        for(int i=scores.length;i>=0;i--){

            if(scores[i]<0||scores[i]>100){

                continue;

            }

            num++;

            if(num>3){

                break;

            }

            System.out.println(scores[i]);

        }

    }

    

    

    

    

    

    

    

    

    

}


正在回答

1 回答

数组越界,

比如7个元素的数组arr。

arr[7]是数组角标越界的,只有arr[0]到arr[6];

你应该这么写反向循环,    for(int i=scores.length - 1;i>=0;i--)

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

举报

0/150
提交
取消
Java入门第一季(IDEA工具)
  • 参与学习       1168089    人
  • 解答问题       18754    个

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

进入课程

请问看看什么问题

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号