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

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

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("考试成绩的前3名为");
    HelloWorld hello = new HelloWorld();
    
    hello.showTop3(scores);
        
        
    }
    
    //定义方法完成成绩排序并输出前三名的功能
    public void show(int[] scores){
        Arrays.sort(scores);
        int num=0;
        System.out.println(Arrays.toString(scores));
        for ( int i = scores.length - 1; i >= 0; i-- ) {
            if (scores.[i]<0 || scores.[i]>100){
            continue;
            }
            num++;
            if(num>3){break;}
            System.out.println(scores[i]);
   
为啥scores.length 需要-1,不太理解




正在回答

2 回答

应为scores.length代表的是数组的长度,比如int [] nums=new int[8],的时候nums.length就等于9,所以当然要-1拉,而文中的scores.length=9;

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

紫羽降雪 提问者

非常感谢!
2016-11-22 回复 有任何疑惑可以回复我~

知道了,数组的下标是从0开始的,第一步就数组越界啦

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

举报

0/150
提交
取消

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

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