来大神帮我看下这是什么意思?

来源:7-1 编程练习

_朝歌_

2015-08-12 17:05

public class HelloWorld {
   
    //完成 main 方法
    public static void main(String[] args) {
int [] scores={89,-23,64,91,119,52,73};   
  HelloWorld h =new HelloWorld();
  h.paixu(scores);  
    }
   
    //定义方法完成成绩排序并输出前三名的功能
   
   
    public void paixu(int [] scores){
     Arrays.sort(scores);
  int a=0;
  for(int i = scores.length - 1; i >= 0; i-- ){ 
   if(scores[i]<=0||scores[i]>=100){
    continue;    
   }else{
    a++;
    if(a>3)
     break;
   }
   System.out.println(scores[i]); 
  }
 }
 
}

//我不明白scores.lenth-1 是什么意思?

写回答 关注

2回答

  • 丶小八戒
    2015-08-12 17:25:51
    Arrays.sort(scores); // 应该是从小到大排序
    // 你要拿前三的分数,直接拿最后三位就好了
    for(int i  = scores.length - 4; i <= scores.length - 1; i++){
        System.out.println(scores[i]); 
    }


  • _朝歌_
    2015-08-12 17:07:04

    我知道了,数组的下标是0---scores.lenth-1

    _朝歌_ 回复丶小八戒

    哦,忘了这个越界的问题,那这样写,for(int i = 0; i <= scores.length-1; i++ ), 我怎样才能输出前三的成绩呢?

    2015-08-12 17:19:36

    共 6 条回复 >

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

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

1165177 学习 · 17581 问题

查看课程

相似问题