入力グレードA、B、C、D、E、FをGPAポイントに変換するJavaアプリケーションがありますが、どこに間違いがあるのかわからないというエラーがあります。また、ユーザーが他の入力を入力しないように以下のコードを改善する方法もあります。グレードより?
import java.lang.*;
import java.io.*;
import java.util.*;
import java.util.Scanner;
public class Program
{
public static void main(String[] args)
{
Scanner keyboard = new Scanner (System.in);
String letterGrade = " ";
double gradePoints;
boolean error = true;
System.out.println("Enter A Letter Grade: ");
letterGrade = keyboard.next();
if( letterGrade == "A+")
{
gradePoints = 4.0;
}
else if ( letterGrade == "A")
{
gradePoints = 4.0;
}
else if( letterGrade == "A-")
{
gradePoints = 3.67;
}
else if ( letterGrade == "B+")
{
gradePoints = 3.33;
}
else if( letterGrade == "B")
{
gradePoints = 3.0;
}
else if ( letterGrade == "B-")
{
gradePoints = 2.67;
}
else if( letterGrade == "C+")
{
gradePoints = 2.33;
}
else if ( letterGrade == "C")
{
gradePoints = 2.0;
}
else if( letterGrade == "F")
{
gradePoints = 0.0;
}
else(error)
{
System.out.println("Error, you did not enter the correct information");
}
if(!error)
{
System.out.println("Your grade point(GPA) is " + gradePoints);
}
}
}