第三章流程结构,选择结构,循环结构
流程控制结构
在java中有3中流程控制结构:顺序结构、选择结构、循环结构。
顺序结构:程序从上向下执行每条语句的结构,中间没有判断和跳转。
选择结构:程序根据条件判断的结果来选择执行不同的代码。选择结构可分为单分支结构、双分支结构和多分支结构。
循环结构:程序根据判断条件来重复执行某段代码。Java提供了while、do-while、for语句来实现循环结构。
选择结构
java提供了if控制语句和switch语句来实现选择结构。
if控制语句
if控制语句共有3种不同的形式,分别是单分支结构,双分支结构和多分枝结构。
if语句实现单分支处理
格式如下:
if(表达式){
语句
}
if是Java关键字。
表达式是布尔型,其结果是true (真)或 false(假)。
if语句的执行步骤:
a.对表达式的结果进行判断,
b.如果表达式的结果为真,则执行该语句
c.如果表达式的结果为假,则跳过该语句。
if-else语句实现双分支处理
格式如下:
if(表达式){
语句1
} else{
语句2
}
当表达式为真时,执行语句1,表达式为假时,执行语句2。
多分支if语句实现多分支处理
格式如下
if(表达式1){
语句1
}else if(表达式2){
语句2
}else{
语句3
}
其中else if语句可以有多个。
如果表达式1的结果为true,则执行语句1,否则对表达式2进行判断,
如果表达式2的结果为true,则执行语句2,否则执行语句3。
嵌套if语句
格式如下
if(表达式1){
if(表达式2){
语句1
}else{
语句2
}
}else{
if(表达式3){
语句3
}else{
语句4
}
}
switch语句
java中还提供了switch语句,用于实现多分支结构。
switch(表达式){
case 常量1:
语句;
break;
case 常量2:
语句;
break;
…
default:
语句;
break;
}
switch、case、break、default 是Java关键字。
switch后的表达式只能是整型、字符串、或者枚举类型(enumeration)。
default 是可选的,当其他条件不匹配时执行default。
执行步骤:
1.计算switch表达式的值,
2.将计算结果从上到下依次与case常量的值比较,
3.如果相等执行该常量后的代码块,遇到break语句及跳出控制结构,
4.如果与任一case后常量都不匹配,则执行 default 中的代码块。
循环结构
Java中循环控制语句有while循环、do-while循环 、for循环等,循环结构的特点是在给定条件成立时,反复执行某代码块,直到条件不成立为止。
根据循环结构的定义可将它分为三个部分:
1.初始部分:设置循环的初始状态
2.循环体:需要重复执行的代码
3.循环条件:判断条件是否成立
while 循环
格式如下
while(循环条件){
循环体
}
while语句执行步骤:
1.首先对循环条件进行判断,如果结果为真,则执行循环语句,
2.执行完毕后继续对循环条件进行判断,如果为真,继续执行循环语句
3.如果结果为假,则跳过循环结构执行后面的语句。
do-while循环
格式如下
do{
循环体
}while(循环条件);
do-while语句执行步骤:
1.首先执行循环语句,
2.执行完毕后继续对循环条件进行判断,如果为真,继续执行循环语句
3.如果结果为假,则跳过循环结构执行后面的语句。
for循环
格式如下
for(表达式1;表达式2;表达式3){
循环体
}
或
for(变量初始值;循环条件;修改循环变量的值){
循环体
}
for循环语句的执行步骤:
1.首先执行表达式1,将循环变量初始化
2.然后执行表达式2,对循环条件进行判断
3.如果为真,则执行循环体
4.循环语句执行完毕后,执行表达式3,来改变循环变量的值,在执行表达式2,如果结果为真,继续循环
5.如果结果为假,则跳过循环结构执行后面的操作
for语句和while语句功能相似,都是先判断再执行,只是用了不同的语法方式。
for无论循环多少次,表达式1只执行一次。
多重循环
多重循环指一个循环语句中的循环体中再包含循环语句,又称嵌套循环。循环语句内可以嵌套多层循环,同时,不同的循环语句可以相互嵌套。
while(循环条件1){
循环语句1
for(循环条件2){
循环语句2
}
}
这是while语句和for语句嵌套的列子。其中while循环为外层循环,for循环为内层循环,因为是两层嵌套,所以称为二重循环
该二重循环的执行过程是:外层while循环每循环一次,内层for循环就从头到尾完整的执行一遍。
循环对比
1.语法格式不同
2.执行顺序不同
while循环:先判断循环条件在执行循环体,如果条件不成立则跳出循环。
do-while循环:先执行循环体,在判断循环条件,循环体至少执行一次。
for循环:先执行变量初始化部分,在判断循环条件,然后执行循环体,最后进行循环变量的计算,如果条件不成立,跳出循环。
3.使用情况不同
对于循环次数确定的情况,通常选用for循环,对于循环次数不确定的情况,通常选用while循环和do-while循环语句。
跳转语句
JAVA语言中支持三种类型的跳转语句,break语句、continue语句、return语句,使用这些语句可以把控制转移到循环甚至程序的 其他部分
break语句
break语句在循环中的作用是终止当前循环,在switch语句中的中作用是终止switch。
continue语句
continue语句作用是强制循环提前返回,也就是让循环跳过本次循环中的剩余代码,然后开始下一次循环。
return语句
return语句作用是结束当前方法的 执行并退出返回到调用方法的语句处。