[教程][C#] 新手入门教程#9——switch

之前介绍了if..else if .. else 结构
你;switch 又干嘛的?
我:恩..很简单,就像if .. else 的结构代替品,在特定的情况下,你可以打更少的代码!
你:例子例子!
现在在你的Form上加入一个TextBox 和一个 Button

image

双击button1(还记得event handler 么?)
现在你需要检测textbox1 的 text

1、如果是Hi,messagebox就显示Hello!
2、如果是Bye,messagebox 显示Bye!

(很像之前的if..else之中的sample吧?)
如果用之前的if..else 写的话:

image

写很多个image 是不是很不爽?
现在看看switch 怎么写:

image
switch ()括弧中间就是你要检测的东西
这里就是 textbox1的text
然后{}里面呢,就是各种不同的情况(case)

image
case 跟着需要的情况,然后在加上一个冒号
而下一行就是需要运行的代码
这里就是messagebox显示Hello!
但是不要忘了break

image
break 就是

检测完这一个case后,直接跳出switch,不要在做任何检测

要清楚的解释这个
我们加入几个messagebox
然后运行试试看

image
首先输入Hi

image
点击Button后就会看到我们的messagebox Hello跳出来

image
点击Ok之后,你猜猜会出现什么?
After Switch!

image
清楚break的功用了吧?
你:我们的Bye情况呢?
一样!

image
现在我们来试试看
输入Hi,显示Hello

image
输入Bye,显示Goodbye

image
但是你乱输入的话
却什么都没有显示

image
你:为什么?
因为我们的switch没有这个case!
你:可是 if .. else 会handle 这种情况啊..
当然!switch 也能
如果所有的 case 都不符合的话
switch 会直接运行default内的代码:

image
不符合所有的case 的话
就会直接执行messagebox 显示 blablabla

image

当然
switch 不一定要string
什么类型都可以的!
比如:

image

« [教程][C#] 新手入门教程#8——if..else if..else [教程][C#] 新手入门教程#10——数学运算符 »
comments powered by Disqus