1、switch的使用格式是这样的switch(值){case 值1:做1事;break;case 值2:做2事;break;case 值3:做3事;break;case 值4:做4事;break;case 值5:做5事;break;............}其中有三个关键字,switch,case,break.
2、这个语句我们必须要用麻质跹礼例子来说明 int i=1; switch(i) { case 1: Console.Write(1); break; case 2: Console.Write(2); break; case 3: Console.Write(3); break; }
![C#语言入门:[15]多分支选择switch语句](https://exp-picture.cdn.bcebos.com/bd72f23834bb19ef534d65a0497bd28287893aab.jpg)
3、我们把i值换成2和3
![C#语言入门:[15]多分支选择switch语句](https://exp-picture.cdn.bcebos.com/35f2224133bad341fc6f8883427622bc7cc52cab.jpg)
![C#语言入门:[15]多分支选择switch语句](https://exp-picture.cdn.bcebos.com/f591ab03c8d246fe4a5dab37b8bf3bef344f1eab.jpg)
4、看得出来,当i的值(也就是switch后在括号的值)取什么的时候,就执行哪条case的面的语句,这就是选择分支语句,当i的值是1时,执行 case 1:后面的语句;当i的值是2时,执行 case 2:后面的语句;当i的值是3时,执行 case 3:后面的语句
![C#语言入门:[15]多分支选择switch语句](https://exp-picture.cdn.bcebos.com/a99a494afa32939c34e4b6065719ce2c5a1b15ab.jpg)
![C#语言入门:[15]多分支选择switch语句](https://exp-picture.cdn.bcebos.com/f59dbe39131fceecf1ca00c179c4ec9958430bab.jpg)
![C#语言入门:[15]多分支选择switch语句](https://exp-picture.cdn.bcebos.com/1f03436b04d14929b79b50a763e5eceeacbc7eab.jpg)
5、好了,到这一步,我们换回我们一开始说的那个例子,就是语言选择的,这里我们要告诉大家的是, switch的选择语句,不仅可以使用整型,像上面的 1,2,3,4,5,也可以使用字符,像"中文","英文","日文"......,或其它任意类型的值,这里的语言选择用的是字符串值
![C#语言入门:[15]多分支选择switch语句](https://exp-picture.cdn.bcebos.com/edafb3bcbe2f4770720bb66e6f3b3b86032179ab.jpg)
6、现在我们换成"德语",输出结果正好是case "德语":后面的结果.我强调一下,这个就是switch的语法格式,可以说是固定的,你理解它,那就当是理解了,理解不了,就死记硬背,其实也没有什么好理解的,因为格式本身就是C#语言的发明人规定的,一定要记住它就对了
![C#语言入门:[15]多分支选择switch语句](https://exp-picture.cdn.bcebos.com/03605157935653bbc4330d4f1d0b3121046171ab.jpg)
7、下面我们来分析语法结构,就是谈谈语句后面的break;break有什么用呢,上一章我们讲过,break是用来中止循环的,这里的break其实差不多,也是用来中止的,不过不是循环,是中止语句,中止switch的语句,也就是执行了break之后,后面的所有代码将被放弃,不再执行
8、我们菰灞巴静举例来说明,我们先删掉 case "中文": Console.Write("你选择了中文媪青怍牙"); case "英语": Console.Write("你选择了英语");这两句中间的break;有没有发现,程序报错了两个case语句间,一定要用break隔开的,如果非要删掉break,只能这样 case "中文": case "英语": Console.Write("你选择了英语");把Console.Write("你选择了中文");一并删掉,这样一来,程序的意思就变成,无论是选择中文或选择英文,你都执和Console.Write("你选择了英语");
![C#语言入门:[15]多分支选择switch语句](https://exp-picture.cdn.bcebos.com/05e24be983aee8d71c398a5b6b781431deb666ab.jpg)
9、我们来看程序运行结果
![C#语言入门:[15]多分支选择switch语句](https://exp-picture.cdn.bcebos.com/1570c1b6326c5766d5dc6be7a4632385e13661ab.jpg)
![C#语言入门:[15]多分支选择switch语句](https://exp-picture.cdn.bcebos.com/32a127723d03bbea699559fcea43d7d4493154ab.jpg)
10、 case "中文": case "英语": Console.Write("你选择了英语");case的这种用法,其实是为了方便大家对多种不同的条件进行同一种相同处理的方式比如美式英语和英式英语,大家都是英语,但是针对这两种情况返回相同结果,就用到这一功能 string i="英式英语"; switch(i) { case "美式英语": case "英式英语": Console.Write("你选择了英语"); break; case "日语": Console.Write("你选择了日语"); break; case "法语": Console.Write("你选择了法语"); break; case "德语": Console.Write("你选择了德语"); break; case "俄语": Console.Write("你选择了俄语"); break; }
![C#语言入门:[15]多分支选择switch语句](https://exp-picture.cdn.bcebos.com/f7e6410f822b74ee7d2122acda2c8cf1d9a74aab.jpg)
![C#语言入门:[15]多分支选择switch语句](https://exp-picture.cdn.bcebos.com/4a6d48ee7b7f860e11668c4077f5ee0d3bcebeab.jpg)
11、好了,就讲这么多了,大家自行练习吧,比如把类型换成浮点的练习,把类型换成字符的练习,多练自然就能理解透了