Day3.流程控制

目标

选择结构
循环结构
多分支的if结构
跳转语句

流程控制结构

java中有三种流程控制结构:顺序结构,选择结构,循环结构
顺序结构:顺序结构指的是程序自上而下依次执行的每条语句,其中没有任何的判断和跳转。
选择结构:选择结构根据判断条件的结果来执行不同的代码
循环结构:根据判断条件来重复执行某块代码。Java提供,while语句,do-while语句,for语句来实现循环结构
顺序: 选择: 循环:
在这里插入图片描述

一.选择结构

java提供If控制语句,switch语句来实现选择结构

1.if控制语句

if语句的语法格式如下:

if(表达式){

​			语句块

​		}

if是java中的关键字

​ 表达式是布尔类型的表达式,其结果是true或false

执行步骤:

​ 1.对表达式的结果进行判断

​ 2.如果表达式是真(true),执行语句块

​ 3.如果表达式是假(false),则跳过该语句块

(1).使用if语句实现单分支处理

if语句由条件表达式和紧随其后的语句组成,如果if条件表达式后面有多个语句,千万别忘记在多个语句的前后添加一对花括号

if的语句语法如下:

if(表达式){

​		语句块1;

​		语句块2;

​	}

在这里插入图片描述

例1.

需求:请实现如果成绩大于等于60分,就输出“成绩合格,考试通过”;
分析:从需求上看,条件判断就是大于等于60分

实现步骤:

​ 1为了保存成绩的变量使用score变量赋值

​ 2.使用if语句判断成绩是否大于等于60,如果大于等于60,则输出信息“成绩及格,考试通过”
代码实现:
在这里插入图片描述

(2).使用if-else语句实现双分支处理

​ if-else语句的语法如下:

if(表达式){

​			语句块

​		}else{

​			语句2

​		}

​ 当表达式为true时,执行语句块1;

​ 表达式为false时,执行语句块2;
在这里插入图片描述

注意:

​ 1.if-else语句由if和紧随其后的else组成

​ 2.else语句不能单独使用,它必须是if语句的一部分,与最近的if语句配对使用

例2.

在这里插入图片描述

(3).使用多分支if语句实现多分支处理

​ 当多个条件判断时,需要使用多分支语句来解决

​ 多分支if语句的语法格式:

if(表达式1){

​				语句块1

​			}else if(表达式2){

​				语句块2

​			}else{

​				语句块3

​			}

​ 多分支语句的执行步骤

​ 1.对表达式1的结果进行判断

​ 2.如果表达式1的结果为true,则执行语句块1,否则判断表达式2的值

​ 3.如果表达式2的结果为true,则执行语句块2,否则执行语句块3.
在这里插入图片描述

注意

​ 不论多分支if语句中由多少个条件表达式,只会执行那个符合条件的一个,如果没有符合条件的,则执行else子句中的语句。
例3
需求:

​ 如果成绩大于等于90分,且小于等于100分,输出“A级”;否则如果大于等于80分,输出“B级”

​ 否则如果大于等于70分,输出“C级”;否则大于等于60分,输出“D级”,低于60分,输出“E级”

实现步骤:

​ 1.保存成绩的变量,变量赋值

​ 2.使用多分支if语句进行判断
在这里插入图片描述
注意

​ 1.在上述的if控制语句中,条件表达式必须是布尔类型的,这是java与c语言和C++的不同之处

2.嵌套if控制语句:

在if控制语句中包含一个或者多个if控制语句,称之为嵌套if控制语句,嵌套if控制语句可以通过外层语句和内层语句的协作,来增强程序的灵活性
嵌套if控制语句的语法格式如下:

​if(表达式1){

​	if(表达式2){

​			语句1

​			}else{

​		语句2

​		}

​	}else{	

​		if(表达式3){

​					 语句3
 
​		    	 }else{

​					 语句4

​			}

嵌套if控制语句的执行过程:

​ 1.对表达式1进行结果判断

​ 2.如果表达式的结果为true,再判断表达2的结果判断。如果表达式2的结果为true,则执行语句1;否则。再判断表达式2的值

​ 3.如果表达式1的结果为false,对表达式3的结果进行判断,如果表达3的结果为true,则执行语句3;

​ 否则,判断表达式4的值
在这里插入图片描述

例4

​ 需求:

​ 请实现如果今天是周六或者周日,气温再30度以上,去游泳;否则就去爬山

​ 如果今天不是周六或者周日·,天气好,去客户单位谈业务;否则就在公司上网查资料。

​ 分析:

​ 1.外层的if控制语句来判断是否是工作日

​ 2.内层的if控制语句判断天气状况

​ 实现的步骤:

​ 1.使用if控制语句判断今天是否是周日或者周六

​ 2.如果是周六或者周日,那么进一步去判断气温是否在30度以上

​ 3.如果不是周六周日,那么去判断天气是否好
在这里插入图片描述

3.Switch语句

java中还提供了Switch语句来实现多分支的选择结构,它和多分支的if语句结构,在某些情况下,可以相互替换。

Switch语句语法的格式:


​		switch(表达式){

​			case常量1:

​				语句

​			break;

​			

​			case常量2:

​				语句

​			break;

​			........

​			default:

​				语句;

​			break;

​		}

在这里插入图片描述

switch case break default都是java中的关键字

Switch的表达式只能式字符型,枚举型,整数型

case用于表达式匹配

default是选择的,当其他条件不匹配时,执行default

注意
如果case后没有break语句,程序将会继续向下执行,直到遇到break语句或Switch语句结束

Switch语句执行的步骤:
1.计算Switch语句中的表达式的值

2.将计算结果从上至下依次和case常量值进行比较

3.如果相等就执行该常量后的代码块,遇到break语句后,就结束

4.如果与任何case后的常量值都不匹配,就执行default中语句

例5
需求:
Switch实现成绩等级
在这里插入图片描述

在这里插入图片描述
Switch 后面的表达时“score/10”,会得到一个整数型值,在案例中也就是7,凡是60~69分的成绩都会得到整数6,与case6匹配成功,并执行case6后面的语句如遇到break;程序退出,所以输出的是D级;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Xem626

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值