java - 学生GPA.java :5: error: '.class' expected error

标签 java methods

当我尝试调用其他方法时,我不断收到此错误。我正在尝试使用方法重载,因为它需要它。 我知道计算是正确的,我只是想获得最终的 gpa 值,以便根据其值打印出消息。

请帮助我,因为我了解如何使用多种方法,我只想调用方法 GPA Calculator 并将其放在 Main 方法中

import java.util.Scanner;
public class StudentGPA {

public static void main(String[] args){
    gpaCalculator(double gpa);
    double gpa;

    if (gpa == 4.0){
        System.out.println("Excellent! Congratulations on a great job!");
    }

    else if ((gpa >= 3.5)&&(gpa < 4.0)){
        System.out.println("Great job! Keep up the good work!");
    }

    else if ((gpa >= 3.0)&&(gpa <3.5)){
        System.out.println("Very good job! Make sure you keep it this way(or higher) to easily get to graduate school");
    }

    else if ((gpa >= 2.0)&&(gpa <3.0)){
        System.out.println("Time to put a little more effort not to fall below 2.0 and most importantly to get back to 3.0");
    }
    else if (gpa < 2.0){
        System.out.println("I'm sure you'll get back on track, but please make an appointment with an advisor!");
    }
    else{
        return;
    }


}
public static void gpaCalculator(double gpa){

 String grade = "";
 double credit1;
 double credit2;
 double credit3;
 double credit4;
 double gradeValue=0;
 double totPtsClass1=0;
 double totPtsClass2=0;
 double totPtsClass3=0;
 double totPtsClass4=0;
 double totPts=0;
 double totalCredits= 0;


 Scanner scrn = new Scanner (System.in);
  System.out.println("Please enter the number of credits of the class 1     (A number)");
  credit1 = scrn.nextDouble();
  System.out.println("Please enter your grades for the class 1(Capital  letters such as A,B+, C-)");
  grade = scrn.next();

  if (grade.equals ("A"))
    gradeValue= 4.00;
  else if (grade.equals("A-"))
    gradeValue= 3.67;
  else if (grade.equals("B+"))
    gradeValue = 3.33;
  else if (grade.equals("B"))
    gradeValue = 3.00;
  else if (grade.equals ("B-"))
    gradeValue = 2.67;
  else if (grade.equals("C+"))
    gradeValue = 2.33;
  else if (grade.equals("C"))
    gradeValue = 2.00;
  else if (grade.equals ("D+"))
    gradeValue = 1.33;
  else if (grade.equals ("D"))
    gradeValue = 1.00;
  else if (grade.equals ("F"))
    gradeValue = 0;
  else if (grade.equals ("FX"))
    gradeValue = 0;
  else
    System.out.println ("Invalid Grade");

  totPtsClass1 = gradeValue * credit1;

  System.out.println("Please enter the number of credits of the class 2 (A number)");
  credit2 = scrn.nextDouble();
  System.out.println("Please enter your grades for the class 2 (Capital letters such as A,B+, C-)");
  grade = scrn.next();

  if (grade.equals ("A"))
    gradeValue= 4.00;
  else if (grade.equals("A-"))
    gradeValue= 3.67;
  else if (grade.equals("B+"))
    gradeValue = 3.33;
  else if (grade.equals("B"))
    gradeValue = 3.00;
  else if (grade.equals ("B-"))
    gradeValue = 2.67;
  else if (grade.equals("C+"))
    gradeValue = 2.33;
  else if (grade.equals("C"))
    gradeValue = 2.00;
  else if (grade.equals ("D+"))
    gradeValue = 1.33;
  else if (grade.equals ("D"))
    gradeValue = 1.00;
  else if (grade.equals ("F"))
    gradeValue = 0;
  else if (grade.equals ("FX"))
    gradeValue = 0;
  else
  System.out.println ("Invalid Grade");

  totPtsClass2 = gradeValue * credit2;

  System.out.println("Please enter the number of credits of the class 3 (A number)");
  credit3 = scrn.nextDouble();
  System.out.println("Please enter your grades for the class 3 (Capital letters such as A,B+, C-)");
  grade = scrn.next();

  if (grade.equals ("A"))
    gradeValue= 4.00;
  else if (grade.equals("A-"))
    gradeValue= 3.67;
  else if (grade.equals("B+"))
    gradeValue = 3.33;
  else if (grade.equals("B"))
    gradeValue = 3.00;
  else if (grade.equals ("B-"))
    gradeValue = 2.67;
  else if (grade.equals("C+"))
    gradeValue = 2.33;
  else if (grade.equals("C"))
    gradeValue = 2.00;
  else if (grade.equals ("D+"))
    gradeValue = 1.33;
  else if (grade.equals ("D"))
    gradeValue = 1.00;
  else if (grade.equals ("F"))
    gradeValue = 0;
  else if (grade.equals ("FX"))
    gradeValue = 0;
  else
    System.out.println ("Invalid Grade");

    totPtsClass3 = gradeValue * credit3;

  System.out.println("Please enter the number of credits of the class 4 (A number)");
  credit4 = scrn.nextDouble();
  System.out.println("Please enter your grades for the class 4 (Capital letters such as A,B+, C-)");
  grade = scrn.next();

  if (grade.equals ("A"))
    gradeValue= 4.00;
  else if (grade.equals("A-"))
    gradeValue= 3.67;
  else if (grade.equals("B+"))
    gradeValue = 3.33;
  else if (grade.equals("B"))
    gradeValue = 3.00;
  else if (grade.equals ("B-"))
    gradeValue = 2.67;
  else if (grade.equals("C+"))
    gradeValue = 2.33;
  else if (grade.equals("C"))
    gradeValue = 2.00;
  else if (grade.equals ("D+"))
    gradeValue = 1.33;
  else if (grade.equals ("D"))
    gradeValue = 1.00;
  else if (grade.equals ("F"))
    gradeValue = 0;
  else if (grade.equals ("FX"))
     gradeValue = 0;
  else
   System.out.println ("Invalid Grade");
  totPtsClass4 = gradeValue * credit4;

  totPts= totPtsClass1+totPtsClass2+totPtsClass3+totPtsClass4;
  totalCredits = credit1+credit2+credit3+credit4;
  gpa= totPts / totalCredits;

  return gpa;
  }
}

最佳答案

您有许多语法错误,让我们首先修复该方法。这个

public static void gpaCalculator(double gpa){

应该是

public static double gpaCalculator(){

然后,要调用它,请更改

gpaCalculator(double gpa);
double gpa;

double gpa = gpaCalculator();

关于java - 学生GPA.java :5: error: '.class' expected error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46880988/

相关文章:

java - 为记录添加过滤功能以便快速搜索

java - 是否可以使用Java在静态方法中创建静态对象

javascript - var functionName = function() {} vs function functionName() {}

php - 最佳实践 : returning multiple values

java - Arraylist:方法不会打印数组中的最后一个元素

java - 从用户那里获取输入并将其存储在 Java 中的字符串数组中

java - 删除数据结构 vector 中的重复项

java - Spring MVC - 从JSP表中删除记录

多个变量之间的java线程安全

ruby-on-rails - Ruby on Rails 的每个 do 方法。