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

方法调用第11行和18行有报错但是不知到哪里错了,求大神指点啊

package fangfa;


 

import java.util.Arrays;

public class StringArraysCanFan {

    

    //完成 main 方法

    public static void main(String[] args) {

    StringArraysCanFan hello=new StringArraysCanFan();

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

       hello.sort(scores);

        System.out.println("前三名成绩为:"+Arrays.toString(scores));

        

        

    }

    

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

     public double sort(double[] scores){

      Arrays.sort(scores);

       int  count=0;

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

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

            count+=1;

              if(count>3){

                  break;

              } 

            return scores[i];

          } 

      }

    }

    

}


正在回答

3 回答

public class HelloWorld {
import java.util.Arrays;
    //完成 main 方法
    public static void main(String[] args) {
        HelloWorld getGrades = new HelloWorld();
     int[] result = getGrades.exam(89,-23,64,91,119,52,73);
    }
   
    //定义方法完成成绩排序并输出前三名的功能
    public int[] exam(int a,int b,int c,int d,int e,int f,int g){
     int[] scores = {a,b,c,d,e,f,g};
  Arrays.sort(scores); //对数组进行升序排序
  
  int effGra = 0; //定义并初始化有效成绩个数
  for (int i = scores.length-1;i >= 0;i--){ //倒序遍历数组
   if ((scores[i]<0)||(scores[i]>100)){ //如果成绩小于 0 或大于 100
    continue;       //则使用 continue忽略此成绩
   }
   effGra++; //有效成绩+1
   if (effGra > 3){ //如果有效成绩数大于 3
    break; //则结束循环
   }
   else{
    System.out.printf(scores[i]+"\t"); //只输出成绩的前三名
   }
  }
  return scores;
 }
}

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

慕UI1237056 提问者

非常感谢!
2016-03-08 回复 有任何疑惑可以回复我~
#2

慕UI1237056 提问者

我要继续加油啦!!!对方法调用还不是很理解!!谢谢!!
2016-03-08 回复 有任何疑惑可以回复我~

调用的scores没有声明http://img1.sycdn.imooc.com//56db073c0001a56e07080580.jpg

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

慕UI1237056 提问者

多谢啦!!
2016-03-08 回复 有任何疑惑可以回复我~

package fangfa;

import java.util.Arrays;

public class StringArraysCanFa{


    //完成 main 方法

    public static void main(String[] args) {

        StringArraysCanFahello=new StringArraysCanFa();

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

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

        hello.sort(scores);

    }

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

     public double sort (double[] scores){

      Arrays.sort(scores);

       int  count=0;

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

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

            continue;

          }

          count+=1;

          if(count>3){

             break;

          } 

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

      }

       return 1;

    }

}


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

慕UI1237056 提问者

return 1 是什么意思啊
2016-03-08 回复 有任何疑惑可以回复我~

举报

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

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

进入课程

方法调用第11行和18行有报错但是不知到哪里错了,求大神指点啊

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