C#程序的执行都是一行接一行、自上而下地进行,不遗漏任何代码。为了让程序能按照开发者所设计的流程进行执行,必然需要进行条件判断、循环和跳转等过程,这就需要实现流程控制。C#中的流程控制包含了条件语句、循环语句、跳转语句和异常处理四个方面。
一、跳转语句
break语句:终止并跳出循环体。
continue语句:终止当前循环,重新开始一个新的循环。
goto语句:跳转到指定位置。
C#允许给代码行加上标签,这样就可以使用goto语句直接跳转到这些代码行上。goto语句的用法如下:
goto<labelName>;
标签用下述方式定义:
<labelName>:
goto语句有两个限制,不能跳转到像for循环这样的代码块中,也不能跳出类的范围,不能退出try…catch语句后面的finally块。
这里讲解goto语句只为了解其语法,当遇到时能知道代码的意思,本人不建议使用。
return语句:跳出循环及其包含的函数。
throw语句:抛出一个异常。
二、条件语句
条件语句可以根据条件是否满足或者根据表达式的值控制代码的执行分支。C#有两种控制控制代码分支的结构,分别是if语句和switch语句。
if语句
注意:if语句的条件可以是布尔变量,也可以是表达式,但如果是表达式,则表达式得到的结果必须是布尔值。
1、单选择if语句,即条件成立执行,语法如下:
if(条件)
{
do;
}
2、ifelse语句,即条件成立执行A否则执行B,语法如下:
if(条件)
{
do A;
}
else
{
do B;
}
延伸:三元运算符?:也相当于一个ifelse语句,语法如下:<表达式> ? <resultIfTrue> : <resultIfFalse> 其中计算表达式可得到一个布尔值,
运算符的结果根据这个值来确定是<resultIfTrue>,还是<resultIfFalse>。例:
int a = 8; string b = (a < 10) ? "小于10" : "大于10";