我是Java的新手,并创建了我的第一个项目,它是一个使用intellij的计算器。我创建了两个if else语句,第一个语句采用用户给定的平均值并将其转换为成绩。第二个应该是成绩,然后将其变成gpa。我已经宣布弦乐等级;和String gpa。
if (avg >= 90.0 ) {
grade = "A";
} else if (avg >=80.0) {
grade = "B";
} else if (avg >=70.0){
grade = "C";
} else if (avg >=60.0) {
grade = "D";
} else {
grade = "F";
}
System.out.println("Grade is " + grade );
if (grade = A ) {
gpa = "4.0";
} else if (grade = B) {
gpa = "3.0";
}
编辑:“年级等于”解决方案用红色下划线修复了第一个错误,但未编译。因此,我最终改用switch语句来获取两个print语句。
答案 0 :(得分:1)
if (avg >= 90.0 ) {
grade = "A";
} else if (avg >=80.0) {
grade = "B";
} else if (avg >=70.0) {
grade = "C";
} else if (avg >=60.0) {
grade = "D";
} else {
grade = "F";
}
System.out.println("Grade is " + grade );
if (grade.equals("A")) {
gpa = "4.0";
} else if (grade.equals("B")) {
gpa = "3.0";
}
答案 1 :(得分:0)
几个问题:
if (grade = A )
要检查是否相等,应使用==(用于比较引用)或equals
作为字符串。
A
不是变量,而是您要比较的字符串,因此应为"A"
在两个单独的if中做没有意义。一次:
if (avg >= 90.0 ) {
grade = "A";
gpa = "4.0";
} else if (avg >=80.0) {
grade = "B";
gpa = "3.5";
} else if (avg >=70.0){
...
...