您的位置:首页 > 编程语言 > C#

C#学习回顾笔记九:switch选择分支结构

2017-09-20 23:45 459 查看
1)什么是switch语句?

switch语句能分支判断选择条件,并执行相应条件下的代码。switch分支语句使得多条件的判断变得更加容易,偶尔还用于替代复杂的if-else if-else……结构。

2)为什么使用switch语句?

上面提到过,switch有时候用于替换复杂的if-else if-else if……

switch让程序根据表达式的值,选择一个动作执行。可能可以发现switch从逻辑上来说与多分支语句if-else有些相似,但比if-else有更好的可读性。毕竟if-else嵌套太多,对阅读代码也是一种折磨。

3)如何使用switch语句?

直接通过一个例子来说明switch的作用:

class Program
{
static void Main(string[] args)
{
Console.WriteLine("请从21到23选择一个数字输入:");
int num = Convert.ToInt32(Console.ReadLine());
switch (num)
{
case 21:
Console.WriteLine("你输入的肯定是21");
break;
case 22:
Console.WriteLine("你输入的肯定是22");
break;
case 23:
Console.WriteLine("你输入的肯定是23");
break;
}
Console.ReadKey();
}
}
本代码中,用户先录入一个值,并被num变量接收。switch根据num的值选择一个满足条件的执行,如果num的值是22,则switch会选择执行 case 22后面的代码,然后执行break;并退出switch结构。如果用户输入的值是21或23,同理。但用户输入的是21到23之外的其他值,则因为switch内没有任何满足的条件,因此并没有任何结果。实际上,switch还可以设定一个特殊情况的分支条件,比如不满足21到23的所有数字,可以把代码修改为:

class Program
{
static void Main(string[] args)
{
Console.WriteLine("请从21到23选择一个数字输入:");
int num = Convert.ToInt32(Console.ReadLine());
switch (num)
{
case 21:
Console.WriteLine("你输入的肯定是21");
break;
case 22:
Console.WriteLine("你输入的肯定是22");
break;
case 23:
Console.WriteLine("你输入的肯定是23");
break;
default :
Console.WriteLine("你输入的肯定不是21到23");
break;
}
Console.ReadKey();
}
}
只是在switch分支的最后面增加了一个default的判断条件,表示当前面的都不满足条件时,就执行这一句。switch还有一种用法:

class Program
{
static void Main(string[] args)
{
Console.WriteLine("请输入今天的星期
4000
数:");
int num = Convert.ToInt32(Console.ReadLine());
switch (num)
{
case 1:
Console.WriteLine("今天周一,上班");
break;
case 2:
Console.WriteLine("今天周二,放假一天");
break;
case 3:
case 4:
case 5:
Console.WriteLine("今天是周三、周四或周五,全天都不休息");
break;
case 6:
case 7:
Console.WriteLine("今天是周末,出游");
break;
default:
Console.WriteLine("你输入的不是1到7吗?");
break;
}
Console.ReadKey();
}
}
在这个代码中,有一些case下面并没有break;语句,比如case 3、case 4和case 5连在了一起,表示如果num的值是3、4或者5,都执行case 5:后面这一句。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: