-3

使用eclipse我得到错误..错误:此方法必须返回字符串类型的结果

system.out.println 不是返回类型吗?...

愚蠢的问题我确定..

 public class abc{  
     public static void main(String args[])
       {}

public static String getGrade(int score){

        if(score>= 0 && score<=10){
            System.out.println("Fail");

        }
        if(score>= 11 && score<=25){
            System.out.println("D");

        }
        if(score>= 26 && score<=40){
            System.out.println("C");


        }
        if(score>= 41 && score<=55){
            System.out.println("B");

        }
        if(score>= 56 && score<=100){
            System.out.println("A");

        }

    }

    getGrade(23);



}
4

3 回答 3

2

你已经在一个方法中实现了一个方法。

     public static void main(String args[])
       {

public static String getGrade(int score){

(不幸的是)Java不会让你这样做。只需getGrade()从您的main()方法中调用。

于 2013-10-04T13:20:30.363 回答
1

你做了

public class abc{  

  public static void main(String args[]) {

    //Method defined within a method???
    public static String getGrade(int score){
      ...
    }

    getGrade();
  }
}

改为这样做

public class abc{  

  public static void main(String args[]) {
    getGrade();
  }

  public static String getGrade(int score){
    ...
  }
}
于 2013-10-04T13:23:50.113 回答
0

getGrade() 没有像预期的那样返回一个字符串,因此你得到了那个 eroor

解决在顶部有一个像 String result =null 这样的变量的问题;

而不是做 System.out.println("A") 做 result="A" 和类似的其他行,即将 System.out.println("B") 更改为 result="B" 等等......和finnaly做返回结果;

于 2013-10-04T13:27:59.547 回答