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

为什么用带参带返回值的方法不行?

import java.util.Arrays;

public class HelloScore {

    public static void main(String[] args) {

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

      HelloScore score = new HelloScore();

      int sortthenum = score.sortScore();

      System.out.println(sortthenum);

    }

public int sortScore(int[] scores){

    Arrays.sort(scores);

    int j = 0;

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

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

        continue;

    }else{

        j++; 

        if (j > 3){

           break;

    }   

    return int[] scores;//这一句总是报错说:   '.class' expected 是什么意思?

    }

}

}

}


正在回答

4 回答

调用方法时没有写实参

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

你方法返回的数组,但是返回赋值给了一个整型,方法返回值改为一个int值就可以

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

import java.util.Arrays;


public class HelloScore {

    public static void main(String[] args) {

      double[] scores = { 8.9, -2.3, 6.4, 9.1, 11.9, 5.2, 7.3}; 

      HelloScore score = new HelloScore();

      double[] sortthenum = score.sortScore(scores);

      System.out.println(Arrays.toString(sortthenum));

    }


    public double[] sortScore(double[] scores){

        Arrays.sort(scores);

        int j = 0;

        double[] validscore = new double[3];

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

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

                continue;

            }else{

            validscore[j] = scores[i];

            j++; 

            if (j > 2){

               break;

            }   

        }

        }

        return validscore;

    } 

}

重新写了一遍 这回对了

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

带参方法:说明该方法在使用时要特别指定一些限制或要求,比如add(int x,iny),就是计算x+y的值,x,y在术语上称为形参,所以你使用时,要告诉他x,y都是什么,而这一做法在术语上称为传参,比如add(5,6),而具体5,6,就是你具体传入的值,在术语上称为实参。
int add(int x,iny),前面的int就是说明这个方法有返回值,类型是int的。说明这个方法要将计算结果通过返回一个int值来告诉你,你在使用的时候,需要接收这个返回值,比如int a=add(5,6)。

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

举报

0/150
提交
取消

为什么用带参带返回值的方法不行?

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