《Visual C#从入门到精通》第四章使用复合赋值和循环语句——读书笔记

时间:2021-05-14 21:00:05

第1章 使用复合赋值和循环语句

4.1 使用复合赋值操作符

任何算术操作符都可以像这样与赋值操作符合并,从而获得复合赋值操作符

不要这样写

要这样写

Variable=Variable*number;

Variable*=number;

Variable=Variable/number;

Variable/=number;

Variable=Variable%number;

Variable%=number;

Variable=Variable+number;

Variable+=number;

Variable=Variable-number;

Variable-=number;

提示:复合赋值操作符具有和简单赋值操作符(=)一样的优先级和右结合性。

注意:变量递增或递减1不要使用复合赋值操作符,而是使用操作符++和--。

例如,不要这样写:

Count+=1;

而是这样写:

Count++;

 

4.2 使用while语句

使用while语句,可在条件为true时重复运行一个语句。While语句的语法如下:

while(booleanExpression)

statement

先求值booleanExpression(布尔表达式,注意必须放在圆括号中),为true就运行语句(statement)。再次求值booleanExpression,仍为true就再次运行语句。再次求值...如此反复,直至求值为false,此时while语句退出,从while构造后的第一个语句继续。

while语句在语法上和if语句相似(事实上,除关键字不同,语法完全一样),具体如下。

  • 表达式必须是布尔表达式。
  • 布尔表达式必须放在圆括号中。
  • 首次求值布尔表达式为false,语句不运行。
  • 要在while的控制下执行两个或更多语句,必须用大括号将语句分组成代码块。

正确while语句写法:

《Visual C#从入门到精通》第四章使用复合赋值和循环语句——读书笔记

注意:while循环的变量i控制循环次数。这是常见的设计模式,具有这个作用的变量有时也成为哨兵变量

4.3 编写for语句

for语句提供了结构更正式版本,它将intialization(初始化)、booleanExpression(布尔表达式)与update control variable(更新控制变量)合并到一起。用过for语句就能体会到它的好处,它能防止遗漏初始化和更新控制变量的代码,减小写出无限循环代码的机率。以下是for语句的语法:

for(intialization;booleanExpression;update control variable)

statement

其中,statement(语句)是for循环主体,要么是一个语句,要么是用大括号{}封闭的代码块。

正确for语句写法:

《Visual C#从入门到精通》第四章使用复合赋值和循环语句——读书笔记

注意:1.初始化只发生一次;2.初始化后先执行循环主体语句,再更新控制变量;3.更新控制变量后再重新求值布尔表达式。

4.4 编写do语句

do语句它的布尔表达式在每次循环之后求值,所以主体至少执行一次。

do语句的语法如下(不要忘记最后的分号):

do

statement

while(booleanExpression);

多个语句构成的循环主体必须是放在{}中的代码块。以下语句向控制台输出0~9,这次使用do语句:

《Visual C#从入门到精通》第四章使用复合赋值和循环语句——读书笔记

break和continue语句

break可跳出switch语句。还可用它跳出循环。执行break后,系统立即终止循环,并从循环之后的第一个语句继续执行。在这种情况下,循环的“更新”和“继续”条件都不会重新判断。

相反,continue语句造成当前循环结束,立即开始下一次循环(在重新求值布尔表达式之后)。下面是在控制台上输出0~9的例子的另外一个版本,这次使用break语句和continue语句:

《Visual C#从入门到精通》第四章使用复合赋值和循环语句——读书笔记

(建议慎用continue语句,或者根本不用,因为它很容易造成难以理解的代码。continue语句的行为还让人捉摸不透。例如,在for语句中执行continue语句,会在运行for语句的“更新(控制变量)”部分之后,才开始下一次循环。)