大明朝的铜币
2019-10-14 17:10:56
Java使用枚举来消除if else
Java代码里经常出现多个if else会大大降低效率,我们可以使用枚举的方式来代替if else,示例代码如下:
public enum Grade { A_10_90(90, 100, "A"), B_90_80(80, 90, "B"), C_80_60(60, 80, "C"), D_60_0(0, 60, "D"), OTHER(-1, -1, "E"); private int start; private int end; private String grade; Grade(int start, int end, String grade) { this.setStart(start); this.setEnd(end); this.setGrade(grade); } public int getStart() { return start; } public void setStart(int start) { this.start = start; } public int getEnd() { return end; } public void setEnd(int end) { this.end = end; } public String getGrade() { return grade; } public void setGrade(String grade) { this.grade = grade; } public static String getGrade(int score) { for (Grade grade : values()) { if (grade.getStart() <= score && score < grade.getEnd()) { return grade.getGrade(); } } return OTHER.getGrade(); } }
public class GradeTest { @Test public void test() { System.out.println(Grade.getGrade(78)); } }
评论
最近浏览
刘先生-OL LV13
2022年11月21日
ITboysDu LV11
2021年7月8日
水光浮藻 LV6
2021年3月4日
wangdongtai LV31
2021年2月6日
Kervin LV11
2020年9月27日
teslamask LV1
2020年7月11日
海盗来了 LV20
2020年6月30日
hh6754 LV3
2020年5月26日
Roxing LV5
2020年5月20日
qaz7225277
2020年4月26日
暂无贡献等级