[黑马程序员]switch小结

13 篇文章 0 订阅

 

------------------------------ASP.Net+Android+IO开发 .Net培训 期待与您交流!------------------------------

 

认真学习了C#和JAVA有关switch的教学视频后,查阅了msdn的相关知识后,决定对switch做个小结,方便今后使用......
(一)概念

switch 语句是一个控制语句,它通过将控制传递给其体内的一个 case 语句来处理多个选择和枚举。例如:

int caseSwitch = 1;
switch (caseSwitch)
{
    case 1:
        Console.WriteLine("Case 1");
        break;
    case 2:
        Console.WriteLine("Case 2");
        break;
    default:
        Console.WriteLine("Default case");
        break;
}

(二)备注

switch 语句可以包括任意数目的 case 实例,但是任何两个 case 语句都不能具有相同的值。

语句体从选定的语句开始执行,直到 break 将控制传递到 case 体以外。

在每一个case 块(包括上一个块,不论它是 case 语句还是 default 语句)的后面,都必须有一个跳转语句(如break)。

如果没有任何 case 表达式与开关值匹配,则控制传递给跟在可选 default 标签后的语句。如果没有 default标签,则控制传递到 switch 以外。

(三)视频教程重点说明:

①switch表达式可以是byte int short 或者char即可,但不允许为布尔类型.

②case和default是没有顺序的,定义位置是随意的.

③default可以在最上面,但仍然从case的确切答案开始读取.

④要么遇到break 要么遇到 } 才结束

⑤如果default在最上面且没有break,且执行default,它会执行完default再执行第一个case,通过break跳出,原理解析:

    default里没有break且符合

     default: ......

     case1: ......

     case2: ......break;

     case3: ......break;

     ......

    ⒈先判断case1不符合

    ⒉判断下面的case均不符合

    ⒊default符合且执行,执行完后没有break也没有遇到 } 所以继续往下执行,且不再判断case

    ⒋执行case1里的语句

    ⒌执行case2里的语句且有 break 则结束.

 

------------------------------ASP.Net+Android+IO开发 .Net培训 期待与您交流!------------------------------

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值