首页 > 解决方案 > 将此代码从 if,else 更改为 Switch case

问题描述

如何使用 Switch case 更改此设置

int marks = 65;

    if (marks < 50){
        System.out.println("fail");
    }
    else if (marks >= 50 && marks < 60){
        System.out.println("D grade");
    }
    else{
        System.out.println("Invald!");
    }

标签: java

解决方案


首先,switchandcase语句主要用于检查特定值,以及enum. 例如:

enum RobotState {IDLE, ACTIVE, INACTIVE;}

...
switch (curr_state) {
    case IDLE: ...
    case ACTIVE: ...
    case INACTIVE: ...
    default: ...
}

在您的示例中,我不建议使用switchandcase因为您需要检查是否marks属于某个范围,而不是是否marks为特定值。但是,如果您必须使用switchandcase作为您的示例,您可以执行以下操作:

switch (marks) {
    case 0:
    case 1:
    case 2:
    ...
    case 50: System.out.println("fail"); break;
    case 51:
    case 52:
    ...
    case 60: System.out.println("D grade"); break;
    default: System.out.println("Invald!");
}

推荐阅读