我只是想知道编写 else 是否有任何目的,或者这纯粹是为了更好的代码可读性而编写的。例如,以下代码取自 oracle java 教程:
class IfElseDemo {
public static void main(String[] args) {
int testscore = 76;
char grade;
if (testscore >= 90) {
grade = 'A';
} else if (testscore >= 80) {
grade = 'B';
} else if (testscore >= 70) {
grade = 'C';
} else if (testscore >= 60) {
grade = 'D';
} else {
grade = 'F';
}
System.out.println("Grade = " + grade);
}
}
用 if 写“else if”部分肯定会做同样的事情吗?如果有人可以帮助向我解释这一点,我将不胜感激。谢谢
最佳答案
主要是关于性能,但也与你想要表达的内容有关!假设测试分数 >= 90,那么 Grade 变量将设置为“A”,并且不会评估其他 if 语句。
将代码重写为
class IfElseDemo {
public static void main(String[] args) {
int testscore = 76;
char grade;
if (testscore >= 90) {
grade = 'A';
}
if (testscore >= 80) {
grade = 'B';
}
if (testscore >= 70) {
grade = 'C';
}
if (testscore >= 60) {
grade = 'D';
} else {
grade = 'F';
}
System.out.println("Grade = " + grade);
}
}
还会检查测试分数是否 >= 80 并将成绩设置为“B”,然后检查 >= 70 并将其设置为“C”,依此类推...
因此,在您的示例中,您不仅会得到错误的结果,而且还会进行更多检查!
关于java - 多个 else/if 语句的目的?不是单个 if then else 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49589115/