11用d编程开关

    switch (expression) {
    case value_1://这里可以不为数字.
        // 为1时操作...
        // ...
        break;
    case value_2:
        // 为2时操作...
        // ...
        break;
    // ... 其他例...
    default:
        // 都不匹配操作
        // ...
        break;
    }

if/else等块,会引进.而case不会.

   switch (value) {

    case 5:
        writeln("five");
        goto case;    //跳至4了,如果没有goto,仍然跳,除非有Break

    case 4:
        writeln("four");
        break;

    default:
        writeln("unknown");
        break;
    }

可用goto...
goto case//走到下个
goto default
goto case XXX//走到xxx
表达式必须是整,串,极,即可用作.

    switch (dieValue) {

    case 1:
        writeln("你赢了");
        break;

    case 2: .. case 5://表区间,范围
        writeln("It's a draw");
        break;

    case 6:
        writeln("我赢了");
        break;

    default:
        break;
    }

值可以有区间. 还可以并列.

case 2,4:
    writeln("It's a draw");
    break;

final switch,必须每种情况都有.默认块就没意义了.这个时候不能有区间( … ).不过可以用(,,,)如:

 int dieValue = 1;

    final switch (dieValue) {

    case 1:
        writeln("You won");
        break;

    case 2, 3, 4, 5:
        writeln("It's a draw");
        break;

    case 6:
        writeln("I won");
        break;
    }

如果表达式是枚举类型,则所有值都必须覆盖,即没有遗漏.这也是final的意义.
当有多个值要比较时,就最好用switch,都要覆盖时用final switch.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值