Switch statement 开关箱断路器

Switch statement 开关箱断路器,switch-statement,break,Switch Statement,Break,想知道如果中断出现在if语句中,我是否可以中断我的案例,或者中断是否只会退出if而不是案例。如果执行else,我只想进入下一个案例。谢谢 case PS_STARTED: readyForPwrDn_b = appReadyForPwrDn_b; if (!readyForPwrDn_b) { break; } else { CurrentPowerState_e = PS_COMPLETE;

想知道如果中断出现在if语句中,我是否可以中断我的案例,或者中断是否只会退出if而不是案例。如果执行else,我只想进入下一个案例。谢谢

  case PS_STARTED:
     readyForPwrDn_b = appReadyForPwrDn_b;

     if (!readyForPwrDn_b)
     {
        break;
     }
     else
     {
        CurrentPowerState_e = PS_COMPLETE;
     }
     //fallthrough

  case PS_COMPLETE:

如果,那么就没有什么东西能突破
<代码>中断
仅适用于
开关
和我熟悉的所有编程语言中的循环

:

中断结束当前for、foreach、while、do while或switch结构的执行

:

break语句终止当前循环、开关或标签语句,并将程序控制转移到终止语句后面的语句

:

break语句与条件开关语句一起使用,与doforwhile循环语句一起使用

但是,这些都适用于未标记的
break
语句。在某些语言中,您可以编写:

myIf: 
    if (!readyForPwrDn_b) {
        break myIf;
    } else {
        CurrentPowerState_e = PS_COMPLETE;
    }

这只不过是从
if
中跳出来的,没有从
if
中跳出来的事<代码>中断仅适用于
开关
和我熟悉的所有编程语言中的循环

if (condition)
{
    //Do your thing

    if (breakOutCondition)
        return;

    //Continue your code
}
:

中断结束当前for、foreach、while、do while或switch结构的执行

:

break语句终止当前循环、开关或标签语句,并将程序控制转移到终止语句后面的语句

:

break语句与条件开关语句一起使用,与doforwhile循环语句一起使用

但是,这些都适用于未标记的
break
语句。在某些语言中,您可以编写:

myIf: 
    if (!readyForPwrDn_b) {
        break myIf;
    } else {
        CurrentPowerState_e = PS_COMPLETE;
    }

这只不过是从
if
中跳出来的,没有从
if
中跳出来的事<代码>中断仅适用于
开关
和我熟悉的所有编程语言中的循环

if (condition)
{
    //Do your thing

    if (breakOutCondition)
        return;

    //Continue your code
}
:

中断结束当前for、foreach、while、do while或switch结构的执行

:

break语句终止当前循环、开关或标签语句,并将程序控制转移到终止语句后面的语句

:

break语句与条件开关语句一起使用,与doforwhile循环语句一起使用

但是,这些都适用于未标记的
break
语句。在某些语言中,您可以编写:

myIf: 
    if (!readyForPwrDn_b) {
        break myIf;
    } else {
        CurrentPowerState_e = PS_COMPLETE;
    }

这只不过是从
if
中跳出来的,没有从
if
中跳出来的事<代码>中断仅适用于
开关
和我熟悉的所有编程语言中的循环

if (condition)
{
    //Do your thing

    if (breakOutCondition)
        return;

    //Continue your code
}
:

中断结束当前for、foreach、while、do while或switch结构的执行

:

break语句终止当前循环、开关或标签语句,并将程序控制转移到终止语句后面的语句

:

break语句与条件开关语句一起使用,与doforwhile循环语句一起使用

但是,这些都适用于未标记的
break
语句。在某些语言中,您可以编写:

myIf: 
    if (!readyForPwrDn_b) {
        break myIf;
    } else {
        CurrentPowerState_e = PS_COMPLETE;
    }
如果,这将从
中断

if (condition)
{
    //Do your thing

    if (breakOutCondition)
        return;

    //Continue your code
}
这个if语句可以工作,但是有一种简单、干净的方法可以摆脱这样的循环。你可以使用一个
goto
来打破这个变量的作用域,这将使它的循环更加清晰。警告:
goto
有时令人害怕,因为它本质上是一种伪装

if (breakoutcondition)
{
    ...
    goto foo;
    ...
}
foo:
//Continue here
这个if语句可以工作,但是有一种简单、干净的方法可以摆脱这样的循环。你可以使用一个
goto
来打破这个变量的作用域,这将使它的循环更加清晰。警告:
goto
有时令人害怕,因为它本质上是一种伪装

if (breakoutcondition)
{
    ...
    goto foo;
    ...
}
foo:
//Continue here
这个if语句可以工作,但是有一种简单、干净的方法可以摆脱这样的循环。你可以使用一个
goto
来打破这个变量的作用域,这将使它的循环更加清晰。警告:
goto
有时令人害怕,因为它本质上是一种伪装

if (breakoutcondition)
{
    ...
    goto foo;
    ...
}
foo:
//Continue here
这个if语句可以工作,但是有一种简单、干净的方法可以摆脱这样的循环。你可以使用一个
goto
来打破这个变量的作用域,这将使它的循环更加清晰。警告:
goto
有时令人害怕,因为它本质上是一种伪装

if (breakoutcondition)
{
    ...
    goto foo;
    ...
}
foo:
//Continue here


什么编程语言?什么编程语言?什么编程语言?什么编程语言?我知道你可以用
break
测试if语句来中断循环,但我相信你在这里是正确的。我想他会使用continue或return,不是吗?我很确定你可以
从标记的块语句中突破
(特定于Java,不确定其他语言)@WhyCry
continue
只能在循环中使用。它将进入循环的顶部,而不仅仅是退出
开关
@VinceEmigh我能找到的所有标记为
break
语句的示例都有标识循环的标签,它通常用于从嵌套循环退出外部循环。它也可以用来从非循环语句中退出吗?@Barmar我在这里读到了,这就是为什么我有了goto的想法。我知道你可以用
break
测试if语句来中断循环,但我相信你在这里是正确的。我想他会使用continue或return,不是吗?我很确定您可以
从标记的块语句(特定于Java,而不是