请问这是错在哪了?代码和运行结果如下。

来源:7-1 编程练习

java同学

2018-08-02 07:07

package com.imooc;

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.paixu(scores);

    

    }

    

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

    public void paixu(int[] scores){

        int num=0;

        Arrays.sort(scores);

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

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

                continue;

            }

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

            num++;

            if(num>=3){

                break;

            }

        }

      

    }

}



    

   

    

 


写回答 关注

3回答

  • weibo_爱你发自内心的微笑_0
    2018-08-02 07:40:37
    已采纳

    length-1。下标等于长度减一,否则就下表越界啦。比如数组长度是6,你说她的下标是几到几

  • DJR丶双
    2018-08-02 17:59:59

    https://img4.mukewang.com/5b62d5f90001fe1308100503.jpg少了返回值吧

    java同学

    谢谢了 已经解决了 代码提示是数组溢出了

    2018-08-02 18:01:26

    共 1 条回复 >

  • java同学
    2018-08-02 07:08:44

    https://img3.mukewang.com/5b623d6f0001fd6107810211.jpg这是结果

Java入门第一季(IDEA工具)升级版

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

1165172 学习 · 17581 问题

查看课程

相似问题