流程控制(第四章)

一、复合语句
与C语言及其他语言相同,Java语言的复合是以整个块区为单位的语句,所以又称块语句。复合语句有开括号“{”开始,闭括号“}”结束。

在使用时要注意,复合语句为局部变量创建一个作用域,该作用域为程序的一部分,在该作用中某个变量被创建并能够使用。如果在某个变量的作用的作用域外使用该变量,则会发生错误。

二、if条件语句
if语句是一个重要的编程语句,用于告诉程序在某个条件成立的情况下执行另一条语句。if条件语句可分为简单的if条件语句,if…else if多分支语句

1.1简单的if条件语句

语法如下:

布尔表达式:必要参数,表示最后返回的结果是一个布尔值。他可以是一个单纯的布尔变量或常量,也可以是使用关系或布尔运算符的表达式。

语句序列:可选参数。可以是一条或多条语句,当表达式的值为true是执行这些语句。若语句列中仅有一条语句,则可以省略条件语句中的“{ }”。

如果语句序列中只有一条语句,可以采用一下写法:

提示: 

简单的if条件语句执行的过程如图所示:

创建Takephone类,模拟拨打电话场景,如果电话号码不是84972266,则提示拨打号码不存在。

运行结果如下: 

  流程图:

二、if…else语句

if…else语句是条件语句中最常用的一种形式,他会针对某种条件有选择做出处理,通常表现为“如果满足某种条件,就进行某种处理,否则就进行另一种处理”。语法如下:

if后面“()”内表达式的值必须是boolean型的。如果表达式的值为ture,则执行紧跟if语句的复合语句;如果表达式的值为false,则执行else后面的复合语句。

使用if…else语句校验密码,在项目中创建Login类,在主方法中定义变量,并通过使用if…else语句判断变脸的值来决定输出结果。

运行结果如下: 

流程图如下: 

三、if…else if多分支语句

if…else if多分支语句针对某一事件的多种情况进行处理。通常表现为“如果满足某种条件,就进行某种处理,否则如果满足另一种条件则执行另一种处理”。语法如下:

条件表达式1~条件表达式n:必要参数。可以由多个表达式组成,但最后返回的结果一定要为boolean类型

语句序列:可以是一条或多条语句,当条件表达式为true时,执行语句序列1:;当条件表达式的值为ture时,执行语句序列2,以此类推。当省略任意一组语句序列时,可以保留其外面的的“{ }”也可以将“{ }”替换为“;”

使用if …else语句实现座位分配,创建Restaurant类,声明整型变量count 表示用餐人数,根据用餐人数安排客人到4人桌、8人桌或者包厢用餐,代码如下。

运行结果如下: 

流程图:

四、Switch 多分支语句

在编程中,一个常见的检测是一个变量是否复合某个条件,如果不符号再用另一个值来检测,以此类推。当然,这种问题使用if条件语句也可以完成。以下是Switch语句的基本语法结构:

注意事项:

1.Switch语句只能用于判断某个变量或表达式的取值,不能判断某个条件是否成立。

2.case分支的取值必须是常量表达式,不能是变量或其他非常量表达式。

3.在case分支中可执行多条语句,但是必须以break语句介绍。如果没有break语句,则会继续执行后面的case分支,直到遇到break语句或switch语句结束。

4.default分支可以省略,如果省略了则不会执行任何代码。

例题,使用switch语句为考试分数分级,创建Scanner类,代码如下。

运行结果如下: 

流程图:

二、循环语句

一、While 循环语句

while循环语句也称判断语句,它的循环方式为利用一个条件来控制是否要继续反复执行这个语句。语法如下:

 

当条件表达式的返回值为真时,则执行“{ }”中的语句,当执行完“{ }”中的语句后,重新判断条件表达式的返回值,直到表达式为假时,退出循环。

例题:创建GetSun类,在主方法中通过while循环计算1~1000相加的和并输出。

代码如下:

运行结果如下: 

流程图:

一、do…while循环语句

do…while循环语句与while循环语句相似,也是用来重复执行一段代码,但是它有个特点,就是无论循环条件是否为真,do…while循环至少会执行一次。

do…while循环语句的语法如下:

使用

1.do…while循环的注意点有:

2.循环体至少会执行一次,所以要确保循环条件的代码可以正确的执行一次

3.循环条件在循环体后面,所以要注意条件的赋值和修改,避免进入死循环。

4.do…while循环的区别在于循环条件的判断顺序,do…while循环先执行一次循环体,再判断循环条件是否为真,而while循环则是先判断循环条件是否为真,再执行循环体,因此在实际使用时要根据具体情况选择的合适的循环语句 

创建LoginService类,代码如下:

 

 

 运行结果如下:

 

流程图:

二、for循环语句

Java中的for循环是一种常用的循环结构,可以方便实现对一定次数的重复执行操作。for循换语法如下:

其中,初始化语句在循环开始前执行一次,循环条件在每次循环开始前进行判断,如果为ture,则执行循环体语句,执行完循环体语句后执行循环后操作,然后再次进行循环条件的判断,如此往复直到循环条件不成立时结束循环。

for循环常用于遍历数组或集合等集合类数据结构。同时,Java中的for循环条件也支持多个循环变量和增量表达式的自定义设置,可以实现更加灵活的循环操作。

需要注意的是,在for循环中,如果循环条件一开始就不满足,循环体语句不会被执行;同时,在循环条体中可以满足使用break语句和continue语句控制循环的执行流程。

使用for循环计算2~100所有偶数只和,代码如下:

运行结果如下: 

流程图:

三、循环控制
break语句
在Java中,break语句可以用于循环或者Switch语句中,用于提前结束或者跳出包含该语句的循环或者Switch语句中,用于提前结束循环或者跳出Switch语句的执行。当程序执行到break语句时,会直接跳出包含该语句的循环或Switch语句,并且继续执行后面的代码。

同样break也可以跳出循环体。在循环中,一旦执行到break语句,循环将会被立即终止,程序会跳出循环并执行循环后的代码。

创建BreakTest类,代码如下:

运行结果如下:

流程图如下: 

Continue 语句
continue语句是针对break语句补充的补充,continue语句不是立即跳出循环体,二是跳过本次循环,回到循环的条件测试部分,重新开始执行循环。在for循环语句中遇到continue后,首先执行循环的增量部分,然后进行条件测试,在while和do…while循环中,continue语句使控制回到条件测试部分。

创建一个ContinueTest类,代码如下:

运行结果如下: 

流程图: 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值