在switch-case中切换到默认情况

Fab*_*111 1 java default switch-statement

在我遇到1/2/etc时,是否可以进入默认情况?

switch(num) {
    case 1:
        if(foo) {
            //do something
        } else {
            //go to default
        }

        ...
        ...
        ...

    default:
        //do something
}
Run Code Online (Sandbox Code Playgroud)

m.a*_*icz 10

即使您numswitch比较值时更改了值,也就是在开始切换之前变量的值,所以如果您输入了一个case分支,则无法再次输入default.

但是你可以做类似的事情

boolean doDefault = false;
switch(num) {
    case 1:
        if(foo) {
            ...
        }
        else {
            doDefault = true;
        }
        break;
}

if(doDefault) {
    //do something
}
Run Code Online (Sandbox Code Playgroud)