BlueJ的表达错误

问题描述:

的非法启动我目前在我高中的在线计算机科学类。我正在制定一个计划,该计划应该从外部文件中考虑几名学生的成绩,并计算学生获得的最终百分比,以及通过使用驾驶员级别和主体类。 (请注意,每个学生有4个等级,一个中期和一个最终测验,测验分数为10分,相当于最终分数的25%,中期价值25%,最终价值50% )每次我尝试编译我的代码时,它都会挂在一个用于确定最终字母等级的if循环上,我不知道它有什么问题,非常感谢您的帮助。BlueJ的表达错误

主代码

public class StudentRecord 
{ 
    private int quiz1; 
    private int quiz2; 
    private int midterm; 
    private int test; 
    private double finalpercent; 
    private char finalgrade; 
    public StudentRecord() 
    { 
     quiz1 = null; 
     quiz2 = null; 
     midterm = null; 
     test = null; 
    } 
    public StudentRecord(int t, int m, int q1, int q2) 
    { 
     quiz1 = q1*10; 
     quiz2 = q2*10; 
     midterm = m; 
     test = t; 
    } 
    public void setTest(int t) 
    { 
     test=t; 
    } 
    public void setMidterm(int m) 
    { 
     midterm=m; 
    } 
    public void setQuiz2(int q2) 
    { 
     quiz2=q2*10; 
    } 
    public void setQuiz1(int q1) 
    { 
     quiz1=q1*10; 
    } 
    public void setFinalPercent(int quiz1, int quiz2, int midterm, int test) 
    { 
     finalpercent = ((quiz1+quiz2)/2)*.25+midterm*.25+test*.5; 
    } 
    public void setFinalGrade(double finalpercent) 
    { 
     if (finalpercent => 90) THIS IS WHERE THE ERROR happens 
     { 
      finalgrade = A; 
     } 
     else if (finalpercent<=89&&finalpercent=>80) 
     { 
      finalgrade = B; 
     } 
     else if {finalpercent<=79&&finalpercent=>70} 
     { 
      finalgrade = C; 
     } 
     else if {finalpercent<=69&&finalpercent=>60} 
     { 
      finalgrade = D; 
     } 
     else 
     { 
      finalgrade = F; 
     } 
    } 
    public int getQuiz1() 
    { 
     return quiz1; 
    } 
    public int getQuiz2() 
    { 
     return quiz2; 
    } 
    public int getMidterm() 
    { 
     return midterm; 
    } 
    public int getTest() 
    { 
     return test; 
    } 
    public double getFinalPercent() 
    { 
    return finalpercent;  
    } 
    public char getFinalGrade() 
    { 
     return finalgrade; 
    } 
    public void inputinfo(Scanner.inFile) 
    { 
     private 
    } 
} 

驱动程序代码

public class StudentRecordDriver 
{ 
    public static void main(String[] args) 
    { 
     Scanner inFIle = null; 
     try 
     { 
      inFile = new Scanner(new File("349f.txt")); 
     } 
     catch (FileNotFoundException e) 
     { 
      System.out.println("File not found"); 
      System.exit(0); 
     }  

System.out.pritnln("Studet\tQuiz1\tQuiz2\tMidTerm\tFinal\tFinal%\tGrade"); 
     int student = 1; 
     while (inFile.hasNext()) 
     { 
      String[] grades = inFile.nextLine().split(" "); 
      int quiz1 = Integer.valueOf(grade[0]); 
      int quiz2 = Integer.valueOf(grade[1]); 
      int midterm = Integer.valueOf(grade[2]); 
      int test = Integer.valueOf(grade[3]); 
      StudentRecord Student = new StudentRecord(int test, int midterm, int quiz1, int quiz2); 



System.out.println(student+"\t"+student.getQuiz1+"\t"+student.getQuiz2+"\t"+student.getMidterm+"\t"+student.getTest+"\t"+student.getFinalPercent+"\t"+student.getFinalGrade);; 
     } 
    } 
} 
+2

嘛'公共无效inputinfo(Scanner.inFile)'看起来并不有效,作为一个开始......也不是身体的事实,只是'private'。 –

+0

它是'> =',而不是'=>'。 – Andreas

你有语法错误的很多。例如,您不能为null,而只能为整数,例如midterm = null。此外,比较=>无效,它是>=这可能是您的错误来自何处。你有'{}'你的IF条件,应该是() ...只是仅举几例。

我不知道BlueJ的任何东西,但如果缺少这样的基本的东西,你可能要切换到像Eclipse更好的IDE。这绝对有助于消除您可能遇到的许多基本错误。