我正在尝试使用 switch case 来根据变量选择条件, 但我收到错误。这样做的正确过程是什么?是否可以使用 switch case,或者我应该使用嵌套 iff?
public class Grader {
// no attributes required
public Grader() {
// no code required
}
public String grade(int mark) {
String grade = null;
// code to determine grade goes here
switch (mark){
//For marks 85-100, Grade is HD
case ((100>=mark>=85)):
grade="HD";
break;
//For marks 75-84, Grade is D
case (mark>=75 && mark<=84):
grade="D";
break;
//For marks 65-74, Grade is C
case (mark>=65 && mark<=74):
grade="C";
break;
//For marks 50-64, Grade is P
case (mark>=50 && mark<=64):
grade="P";
break;
//For marks 49-0, Grade is HD
case (mark<=49 && mark>=0):
grade="F";
break;
}
return grade;
}
public boolean pass(int mark) {
boolean pass = false;
// code to determine pass goes here
return pass;
}
}
我
最佳答案
Switch 在其情况下仅采用常量值。您无法在计算运行时间的情况下添加表达式。
这里最好的方法是使用传统的 if-else-if
。
public String grade(int mark) {
String grade = null;
// code to determine grade goes here
if (mark >= 100 && mark <= 85) {
grade = "HD";
} else if (mark >= 75 && mark <= 84) {
grade = "D";
} else if (mark >= 65 && mark <= 74) {
grade = "C";
} else if (mark >= 50 && mark <= 64) {
grade = "P";
} else if (mark <= 49 && mark >= 0) {
grade = "F";
} else {
grade = "Not found";
}
return grade;
}
关于java - 在Java中使用switch case作为条件语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43337778/