C#语言入门:[15]多分支选择switch语句

作者:清风拂面 | 创建时间: 2023-07-18
当你的程序做条件判断时,可以用if...else... 但是有一个难题,当你的条件很多时,打个比方说,有个程序要求选择语言,语言中有中文,英语,日语,法语,德语,俄语如果你用if...else...,那将是多么麻烦的事,要多少个if...e...
C#语言入门:[15]多分支选择switch语句

操作方法

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.

这个语句我们必须要用例子来说明 int i=1; switch(i) { case 1:  Console.Write(1); break; case 2: Console.Write(2); break; case 3: Console.Write(3); break; }

我们把i值换成2和3

看得出来,当i的值(也就是switch后在括号的值)取什么的时候,就执行哪条case的面的语句,这就是选择分支语句,当i的值是1时,执行 case 1:后面的语句;当i的值是2时,执行 case 2:后面的语句;当i的值是3时,执行 case 3:后面的语句

好了,到这一步,我们换回我们一开始说的那个例子,就是语言选择的,这里我们要告诉大家的是, switch的选择语句,不仅可以使用整型,像上面的 1,2,3,4,5,也可以使用字符,像 "中文","英文","日文"......,或其它任意类型的值,这里的语言选择用的是字符串值

现在我们换成"德语",输出结果正好是case "德语":后面的结果. 我强调一下,这个就是switch的语法格式,可以说是固定的,你理解它,那就当是理解了,理解不了,就死记硬背,其实也没有什么好理解的,因为格式本身就是C#语言的发明人规定的,一定要记住它就对了

下面我们来分析语法结构,就是谈谈语句后面的break; break有什么用呢,上一章我们讲过,break是用来中止循环的,这里的break其实差不多,也是用来中止的,不过不是循环,是中止语句,中止switch的语句,也就是执行了break之后,后面的所有代码将被放弃,不再执行

我们举例来说明,我们先删掉 case "中文":  Console.Write("你选择了中文"); case "英语": Console.Write("你选择了英语"); 这两句中间的break; 有没有发现,程序报错了 两个case语句间,一定要用break隔开的,如果非要删掉break,只能这样 case "中文": case "英语": Console.Write("你选择了英语"); 把 Console.Write("你选择了中文");一并删掉,这样一来,程序的意思就变成,无论是选择中文或选择英文,你都执和 Console.Write("你选择了英语");

我们来看程序运行结果

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; }

好了,就讲这么多了,大家自行练习吧,比如把类型换成浮点的练习,把类型换成字符的练习,多练自然就能理解透了

点击展开全文

更多推荐