流程控制语句
-
在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的。也就是说程序的流程对运行结果有直接的影响。所以,我们必须清楚每条语句的执行流程。而且,很多时候我们要通过控制语句的执行顺序来实现我们要完成的功能。
-
流程控制语句分类
-
顺序结构
-
顺序结构概述
-
是程序中最简单最基本的流程控制,没有特定的语法结构,按照代码的先后顺序,一次执行,程序中大多数的代码都是这样执行的。
-
-
-
选择结构
-
也被称为分支结构。
-
选择结构有特定的语法格式,我们必须按照它的基本格式来编写代码。
-
Java语言提供了两种选择结构语句
-
if语句
-
switch语句
-
-
-
循环结构
-
选择结构(if语句)
-
if语句有三种格式
-
if语句第一种格式:
-
if(关系表达式){
语句体
}
-
-
执行流程
-
首先判断关系表达式看其结果是true还是false
-
如果是true就执行语句体
-
如果是false就不执行语句体
-
-
if语句第二种格式:
-
if(关系表达式){
语句体1;
}else{
语句体2;
}
-
-
执行流程
-
首先判断关系表达式看其结果是true还是false
-
如果是true就执行语句体1
-
如果是false就执行语句体2
-
-
if语句第三种格式:
if(关系表达式1){
语句体1;
}else if(关系表达式2){
语句体2;
}
...
else{
语句体n+1;
}
-
执行流程
-
首先判断关系表达式1看其结果是true还是false
-
如果是true就执行语句体1
-
如果是false就继续判断关系表达式2看其结果是true还是false
-
如果是true就执行语句体2
-
如果是false就继续判断关系表达式...看其结果是true还是false
-
如果没有任何关系表达式为true,就执行语句体n+1。
-
#
选择结构(switch语句)
-
switch语句格式:
switch(表达式){
case值1:
语句体1;
break;
case值2:
语句体2;
break;
...
default:
语句体n+1;
break;
}
循环结构
-
循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,当反复执行这个循环体时,需要在合适的时候把循环判断条件修改为false,从而结束循环,否则循环将一直执行下去,形成死循环。
-
循环语句的组成
-
初始化语句
-
一条或者多条语句,这些语句完成一些初始化操作。
-
-
判断条件语句
-
这是一个boolean表达式,这个表达式能决定是否执行循环体。
-
-
循环体语句
-
这个部分是循环体语句,也就是我们要多次做的事情。
-
-
控制条件语句
-
这个部分在一次循环体结束后,下一次循环判断条件执行前执行。通过用于控制循环条件中的变量
-
-
-
Java提供了三种循环结构语句:
-
for,while,do...while
-
循环结构(while循环语句)
-
while循环语句格式:
-
基本格式
while(判断条件语句){
循环体语句:
}
-
扩展格式
初始化语句;
while(判断条件语句){
循环体语句:
控制条件语句:
}
-
循环结构(do...while循环语句)
-
do...while循环语句格式:
-
基本格式
do{
循环体语句:
}while{判断条件语句};
-
扩展格式
初始化语句;
do{
循环体语句;
控制条件语句;
}while(判断条件语句);
循环结构(三种循环的区别)
-
-
虽然可以完成同样的功能,但是还是有小区别:
-
do...while循环至少会执行一次循环体。
-
for循环和while循环只有在条件成立的时候才会去执行循环体
-
跳转控制语句
-
for循环语句和while循环语句的小区别:
-
使用区别:控制条件语句所控制的那个变量,在for循环结束后,就不能再被访问到了,而while循环结束还可以继续使用,如果你想继续使用,就用while,否则推荐使用for。原因是for循环结束,该变量就从内存中消失,能够提高内存的使用效率。
-
我想让循环在某一步的时候结束或者跳过某些数据不要,现在就做不了这件事情。为了弥补这个缺陷,Java就提供了break,continue来实现控制语句的中断和跳转。
-
break中断
-
continue继续
-