JAVA_Day3_控制流程

##本单元目标

1、流程控制结构 √ 
2、顺序结构 √
3、分支结构 ★
4、循环结构 ★
5、跳转结构 ☆

##分支结构

###概念

程序从两条或多条路径中选择一条去执行,这种结构称为分支结构

###if结构

特点:

①条件表达式的形式可以为:
boolean的变量
boolean变量的赋值
关系表达式
逻辑表达式

只要最终结果为boolean类型即可

②大括号中的执行语句,可以为0条或任意多条,而且可以是任意的打印、变量、运算、if结构等

③当大括号中的执行语句只有一条的时候,可以省略大括号!

一、单分支

说明:

程序从一条路径中去选择,要么执行,要么不执行

语法:

if(条件){
	//条件成立要执行的语句块

}

二、双分支

说明:

程序从两条路径中去选择,要么执行a,要么执行

语法:
if(条件){
//条件成立要执行的语句块

}else{

	//条件不成立要执行的语句块
}

三、多重分支

说明:
程序从多条路径中去选择,最终选择一条

语法:
if(条件){
//条件成立要执行的语句块

}else if(条件2){

}else if(条件3){



}....
else{

	//条件不成立要执行的语句块
}

注意事项:

1、从上往下依次判断if条件的,如果某个条件成立,则下面的条件将不再执行
2、else if块的顺序最好不要调换,因为可能影响效果
3、else块可以省略,也可能影响效果

4、区分开多重if结构和多个if 结构

四、嵌套分支

说明:

一个分支结构中又完整的嵌套了另一个完整的分支结构

示例:

if(){
	if(){
	}else{

	}

}

###switch结构

一、语法

switch(变量或表达式){
	case 常量1:语句1;break;
	case 常量2:语句2;break;
	....
	default:语句n;break;



}

二、执行顺序

先判断出switch括号中的变量或表达式的值,然后依次判断case的常量值是否与之相等

如果相等,则执行对应case的语句块,直到遇见break为止
如果没有相等的,则执行default语句块,直到遇见break为止

三、语法注事项

1、变量或表达式的类型:byte、short、int、枚举、String、char
2、case后只能是常量
3、case后的常量不能重复

4、break从语法上可以省略,但影响效果
5、default从语法上可以省略而且可以调换顺序,但影响效果

###if结构和switch结构大pk

相同点:

都属于分支结构,很多时候都可以互相替换解决分支结构的题目

不同点:

能用switch结构的题目,肯定能用if结构解决

能用if结构解决的题目,不一定能用switch结构解决,必须满足以下条件:

	①判断的类型有限制,必须是byte、short、int、枚举、String、char
	②必须为等值判断

##循环结构

###好处

1、提高代码的重用性,代码更加简洁

2、提高代码的维护性,使代码扩展性更强!

###分类
while
do while
for

###四要素

循环变量初始化
循环条件:满足该条件,将进入循环体执行操作
循环操作:反复执行的代码
循环变量更新

###落地步骤

题型一:知道循环的次数或知道一个范围
示例:打印100遍,统计10个学生,求100——200之间的和


1.需要先套用一个知道条件的框架

int i=初始值;
while(i<=次数或终止值){
	

	i++;
}

2.再分析循环操作即可

3.检测是否四要素齐全或语法有没有改进的地方



题型二:不知道循环的次数

1、将while框架套上
while(){}
2、分析循环条件和循环操作
3、检测是否有四要素

##while循环结构

语法:

循环变量初始化 ①
while(循环条件){ ②
	循环操作   ③
	循环变量更新 ④

}

执行顺序:

①②③④②——直到②不成立为止

##do while循环结构

语法:

循环变量初始化 ①
do{

	循环操作		③
	循环变量更新	④

}while(循环条件);②

执行顺序:
①③④②③④——直到②不成立为止

###while和do while 大pk

相同点:
都能解决任何类型的循环题目
都具备循环的四要素

不同点:

执行顺序不同,do while先执行后判断;while 先判断后执行
执行效果不同,如果第一次条件不成立,do while 至少执行一次;while执行0次
			如果第一次条件成立,do while和while执行次数一样

语法不同

##for循环结构

好处:简化题型一,或者说相当于简化版的while

语法:

for(循环变量初始化;循环条件;循环变量更新){

	循环操作
}

注意事项:

1、三个表达式从语法上讲,可以省略,但有可能导致死循环
2、两个分号必不可少
3、表达式1可以有多条初始化语句隔开,中间必须用逗号隔开
  表达式3可以有多条更新语句组成,中间必须用逗号隔开
  表达式2 可以有多个条件组成,中间用逻辑运算符隔开

###三种循环结构的 大pk

相同点:

1、都具有循环四要素
2、都能解决任何类型循环题目

不同点:

1、语法不同
2、执行顺序不同
while和for 先判断,后执行
do while 先执行,后判断

3、执行效率不同

do while最高
while和for一样,其次

4、应用场景不同

如果知道循环次数,优先考虑使用for解决
如果不知道循环次数,
	先判断,则考虑使用while
	先执行,则考虑使用do while

##跳转结构

概念:改变正常的程序控制流的结构

分类:

break 中断、跳出

continue 继续

return 返回

###break结构

功能:一般用于循环或switch中,作用是跳出所在的循环或switch结构!

语法:
1.
switch(){
case 常量:语句;break;

}

2.循环中

while(){
	if(){
		break;
	}
}

特点:

① 只能跳出所在的一层循环或switch
②如果想跳出外层循环,可以搭配标签使用,具体语法如下

###continue结构

功能:只能用于循环中,作用是结束本次循环,继续下一次

语法:

一般搭配if放在循环中

特点:

①只能跳出所在的一层循环
②如果想跳出外层循环,可以搭配标签使用

###return结构

功能:可以用在方法中的任何地方,作用是跳出所在的方法

你可能感兴趣的:(JAVA_基础(Free))