VisualC#2005快速入门之switch语句
www.nanhushi.com 佚名 不详
某些时候,在嵌套使用if语句时,所有if语句看起来都非常相似,因为它们都在对一个完全相同的表达式进行求值,惟一的区别是每个if语句都将表达式的结果与一个不同的值进行比较。例如: if (day == 0) dayName = "Sunday"; else if (day == 1) dayName = "Monday"; else if (day == 2) dayName = "Tuesday"; else if (day == 3) ... else dayName = "Unknown"; 在这些情况下,通常需要将嵌套的if语句改写为一个switch语句,使程序更有效、更容易懂。 理解switch语句的语法 switch语句的语法如下(switch,case和default是关键字): switch ( controllingExpression ) { case constantExpression : statements break; case constantExpression : statements break; ... default : statements break; } controllingExpression(控制表达式)只求值一次。然后,从其constantExpression值等于controllingExpression值的case开始,它下方的所有语句都会一直运行,直到遇到一个break为止。随后,switch语句将结束,程序从switch结束大括号之后的第一个语句继续执行,并忽略其他case。 假如任何一个constantExpression值都不等于controllingExpression的值,就运行可选标签default之下的语句。 注意 假如controllingExpression的值和任何一个case标签都不匹配,同时没有发现一个default标签,程序会跳过整个switch语句,从它的结束大括号之后的第一个语句继续执行。 例如,前面的嵌套if语句可以改写为以下switch语句: switch (day) { case 0 : dayName = "Sunday"; break; case 1 : dayName = "Monday"; break; case 2 : dayName = "Tuesday"; break; ... default : dayName = "Unknown"; break; }