嗯,首先这场闹剧,让我们编辑你的代码的东西,编译,并在无意义的工作方式:
public class GradeCalculator {
public static void claculateGrade (int mark) {
if (mark >= 70) System.out.println("grade = A");
else if (mark >= 60) System.out.println("grade = B");
else if (mark >= 50) System.out.println("grade = C");
else if (mark >= 50) System.out.println("grade = D");
else if (mark >= 40) System.out.println("grade = E");
}
public static void main (String[] args) {
}
}
现在,打印一个档次有些男人会有些痕迹拿到,你可以调用您的“claculateGrade”方法如下:
public static void main (String[] args) {
claculateGrade(55);
}
这应该在控制台上打印“grade = C”。完整的代码:
public class GradeCalculator {
public static void claculateGrade (int mark) {
if (mark >= 70) System.out.println("grade = A");
else if (mark >= 60) System.out.println("grade = B");
else if (mark >= 50) System.out.println("grade = C");
else if (mark >= 50) System.out.println("grade = D");
else if (mark >= 40) System.out.println("grade = E");
}
public static void main (String[] args) {
claculateGrade(55);
}
}
现在,人们可以进一步改善这一点。让我们通过使方法返回的等级开始:
public static char getGrade (int mark) {
if (mark >= 70) return 'A';
else if (mark >= 60) return 'B';
else if (mark >= 50) return 'C';
else if (mark >= 50) return 'D';
else if (mark >= 40) return 'E';
/* if below 40, return "fail" */
return 'F';
}
这会改变你的代码:
public class GradeCalculator {
public static char getGrade (int mark) {
if (mark >= 70) return 'A';
else if (mark >= 60) return 'B';
else if (mark >= 50) return 'C';
else if (mark >= 50) return 'D';
else if (mark >= 40) return 'E';
/* if below 40, return "fail" */
return 'F';
}
public static void main (String[] args) {
System.out.println("Grade: " + getGrade(55));
}
}
您的代码不会编译,交配。 –
如果你的代码有bug,你应该做的第一件事就是使用你的调试器来确定你的程序为什么要做它的功能。我也建议你在IDE中使用重新格式化器。顺便说一句你可以将上面的代码转换为1班轮。 –