java 中的三种流程控制语句
Posted FanYiZhan
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 中的三种流程控制语句相关的知识,希望对你有一定的参考价值。
1.顺序结构
顺序结构:是程序最简单最基本的流程控制,没有特定的语法结构,按照代码的先后顺序,依次执行,程序中大多数的代码都是这样执行的。
执行流程:从上往下,依次执行。
2.选择结构
-
if语句格式
格式1
if(比较表达式orboolean类型的值){
语句体;
}
执行流程:先计算比较表达式的值,返回值true还是false;
如果是true,执行语句体,如果是false,不执行语句体。
格式2
if(比较表达式){
语句体1;
}else{
语句体2;
}
注意:else后面没有比较表达式,只有if后面有。
执行流程:先计算表达式,返回值是true还是false;
如果是true,执行语句体1;如果是false,执行语句体2。
格式3
if(比较表达式1){
语句体1;
}else if(比较表达式2){
语句体2;
}else if(比较表达式3){
语句体3;
}
........
else{
语句体n;
}
执行流程:先计算表达式1,看返回值是true还是false;
如果是true执行语句体1,if语句结束;
如果是false,计算表达式2,看返回值是true还是false;
如果是true执行语句体2,if语句结束;
如果是false,计算表达式3,看返回值是true还是false;
.........
如果是false,执行语句体n。 -
switch语句
格式
switch(表达式){
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
case 值3:
语句体3;
break;
...............
default:
语句体n;
break;
}
解释:
(1)switch语句表达式取值:byte,short,int,char,JDK5版本后可以有枚举,JDK7版本后有String;
(2)case后面跟的是要和表达式进行比较的值;
(3)语句体可以是一条或多条语句;
(4)break表示中断、结束的意思,可以跳出switch语句;
(5)default语句表示所有情况都不匹配的时候,就执行该处语句,与if语句中的else相似。
执行流程:先计算表达式的值,然后和case中的值匹配,如果成功,执行该处语句。否则执行default中的语句。
注意事项:
(1)case后面只能是常量,不能是常量,也不能出现相同的值;
(2)default可以省略,但不建议,因为他的作用是对不正确情况给出指示;
(3)break可以省略,但不建议,会有case穿透现象;
(4)default可以在任意位置,但建议在最后;
(5)switch语句结束条件:遇到break就结束;执行到末尾就结束。 - if语句和switch语句的区别
if语句使用场景:针对结果是boolean类型的判断
针对一个范围的判断
针对几个常量值的判断 - switch语句使用场景:针对几个常量值的判断
3.循环结构
-
for语句
格式:
for(初始化表达式语句;判断条件语句;控制条件语句){
循环体语句;
}
执行流程:
(1)执行初始化表达式语句;
(2)执行判断条件语句,看返回值是true还是false,如果是true,继续执行,如果是false,结束循环;
(3)执行循环体语句;
(4)执行控制条件语句;
(5)回到(2)继续执行。
注意:初始化表达式语句只执行一次。 - while循环
while语句格式:
初始化条件语句;
while(判断条件语句){
循环体语句;
控制条件语句;
}
执行流程:(1)执行初始化条件语句;
(2)执行判断条件语句,看返回值是true还是false,如果是true,继续执行,如果是false,结束循环;
(3)执行循环语句体;
(4)执行控制条件语句;
(5)回到(2)继续。
do...while循环
do...while语句格式:
初始化条件语句
do{
循环体语句;
控制条件语句;
}while(判断条件语句);
执行流程:(1)执行初始化条件语句;
(2)执行循环体语句;
(3)执行控制条件语句;
(4)执行判断条件语句,看返回值是true还是false,如果是true,继续执行,如果是false,结束循环;
(5)回到(2)继续。 - 三种循环的区别
(1)do...while循环至少执行一次循环体,而for,while循环必须先判断条件是否成立,然后决定是否执行循环体语句;
(2)如果你想在循环结束后,继续使用控制条件的那个变量,用while循环,否则用for循环,不知道用for循环;
(3)建议先考虑for循环,然后是while循环,最后是do...while循环。
1.顺序结构
顺序结构:是程序最简单最基本的流程控制,没有特定的语法结构,按照代码的先后顺序,依次执行,程序中大多数的代码都是这样执行的。
执行流程:从上往下,依次执行。
2.选择结构
-
if语句格式
格式1
if(比较表达式orboolean类型的值){
语句体;
}
执行流程:先计算比较表达式的值,返回值true还是false;
如果是true,执行语句体,如果是false,不执行语句体。
格式2
if(比较表达式){
语句体1;
}else{
语句体2;
}
注意:else后面没有比较表达式,只有if后面有。
执行流程:先计算表达式,返回值是true还是false;
如果是true,执行语句体1;如果是false,执行语句体2。
格式3
if(比较表达式1){
语句体1;
}else if(比较表达式2){
语句体2;
}else if(比较表达式3){
语句体3;
}
........
else{
语句体n;
}
执行流程:先计算表达式1,看返回值是true还是false;
如果是true执行语句体1,if语句结束;
如果是false,计算表达式2,看返回值是true还是false;
如果是true执行语句体2,if语句结束;
如果是false,计算表达式3,看返回值是true还是false;
.........
如果是false,执行语句体n。 -
switch语句
格式
switch(表达式){
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
case 值3:
语句体3;
break;
...............
default:
语句体n;
break;
}
解释:
(1)switch语句表达式取值:byte,short,int,char,JDK5版本后可以有枚举,JDK7版本后有String;
(2)case后面跟的是要和表达式进行比较的值;
(3)语句体可以是一条或多条语句;
(4)break表示中断、结束的意思,可以跳出switch语句;
(5)default语句表示所有情况都不匹配的时候,就执行该处语句,与if语句中的else相似。
执行流程:先计算表达式的值,然后和case中的值匹配,如果成功,执行该处语句。否则执行default中的语句。
注意事项:
(1)case后面只能是常量,不能是常量,也不能出现相同的值;
(2)default可以省略,但不建议,因为他的作用是对不正确情况给出指示;
(3)break可以省略,但不建议,会有case穿透现象;
(4)default可以在任意位置,但建议在最后;
(5)switch语句结束条件:遇到break就结束;执行到末尾就结束。 - if语句和switch语句的区别
if语句使用场景:针对结果是boolean类型的判断
针对一个范围的判断
针对几个常量值的判断 - switch语句使用场景:针对几个常量值的判断
3.循环结构
-
for语句
格式:
for(初始化表达式语句;判断条件语句;控制条件语句){
循环体语句;
}
执行流程:
(1)执行初始化表达式语句;
(2)执行判断条件语句,看返回值是true还是false,如果是true,继续执行,如果是false,结束循环;
(3)执行循环体语句;
(4)执行控制条件语句;
(5)回到(2)继续执行。
注意:初始化表达式语句只执行一次。 - while循环
while语句格式:
初始化条件语句;
while(判断条件语句){
循环体语句;
控制条件语句;
}
执行流程:(1)执行初始化条件语句;
(2)执行判断条件语句,看返回值是true还是false,如果是true,继续执行,如果是false,结束循环;
(3)执行循环语句体;
(4)执行控制条件语句;
(5)回到(2)继续。
do...while循环
do...while语句格式:
初始化条件语句
do{
循环体语句;
控制条件语句;
}while(判断条件语句);
执行流程:(1)执行初始化条件语句;
(2)执行循环体语句;
(3)执行控制条件语句;
(4)执行判断条件语句,看返回值是true还是false,如果是true,继续执行,如果是false,结束循环;
(5)回到(2)继续。 - 三种循环的区别
(1)do...while循环至少执行一次循环体,而for,while循环必须先判断条件是否成立,然后决定是否执行循环体语句;
(2)如果你想在循环结束后,继续使用控制条件的那个变量,用while循环,否则用for循环,不知道用for循环;
(3)建议先考虑for循环,然后是while循环,最后是do...while循环。
以上是关于java 中的三种流程控制语句的主要内容,如果未能解决你的问题,请参考以下文章