流程控制语句

一、流程控制

流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组合成能完成一定功能的小逻辑模块。控制语句分为三类:顺序、选择和循环。

  • 顺序结构:先执行a,再执行b
  • 选择结构:如果…,则…
  • 循环结构:如果…,则再继续…

二、选择结构

1.if单选择结构

if ( 关系表达式 )
     语句体 ;

执行流程:

  • 首先判断关系表达式看其结果是true还是false

  • 如果是true就执行语句体

  • 如果是false就不执行语句体

 

2.if-else双选择结构

if ( 关系表达式 ) { 
     语句体 1 ;
else  {
     语句体 2 ;
}

执行流程:

  • 首先判断关系表达式看其结果是true还是false
  • 如果是true就执行语句体1
  • 如果是false就执行语句体2

3.if-else if-else多选择结构

if  ( 关系表达式 1 ) {
     执行语句 1 ;
else if  ( 关系表达式 2 ) {
     执行语句 2 ;
}
...
else if  ( 关系表达式 n ) {
    执行语句 n ;
else  {
     执行语句 n + 1 ;
}

执行流程

  • 首先判断关系表达式1看其结果是true还是false
  • 如果是true就执行语句体1
  • 如果是false就继续判断关系表达式2看其结果是true还是false
  • 如果是true就执行语句体2
  • 如果是false就继续判断关系表达式看其结果是true还是false
  • 如果没有任何关系表达式为true,就执行语句体n+1

注意:不要在if()后面加";"

if();{}

4.switch选择语句

switch用于选择一个分支来执行

switch ( 表达式 ) {
   case 常量值 1 :
     语句体 1 ;
     break ;
   case 常量值 2 :
     语句体 2 ;
     break ;
  ...
   default :
     语句体 n + 1 ;
     break ;
}

 执行流程:

  • 首先计算出表达式的值
  • 其次,和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结 束。
  • 最后,如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序结束掉。

switch语句中,表达式的数据类型,可以是byteshortintcharenum(枚举),JDK7后可以是String。

注意:case的穿透性

switch语句中,如果case的后面不写break,将出现穿透现象,也就是不会在判断下一个case的值,直接向后运行,直到遇到break,或者整体switch结束。

三、循环结构

循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,当反复执行这个循环体时,需要在合适的时候把循环判断条件修改为false,从而结束循环,否则循环将一直执行下去,形成死循环。

 

 1.for循环

for ( 初始化表达式 布尔表达式 步进表达式 ){
         循环体
}

执行流程: 

  • 执行顺序:①②③④>②③④>②③④②不满足为止。
  • ①负责完成循环变量初始化
  • ②负责判断是否满足循环条件,不满足则跳出循环
  • ③具体执行的语句
  • ④循环后,循环条件所涉及变量的变化情况

2.while循环

初始化表达式
while ( 布尔表达式 ) {
     循环体
     步进表达式
}

执行流程:

  • 执行顺序:①②③④>②③④>②③④②不满足为止。
  • ①负责完成循环变量初始化。
  • ②负责判断是否满足循环条件,不满足则跳出循环。
  • ③具体执行的语句。
  • ④循环后,循环变量的变化情况。

3.do...while循环

初始化表达式
     do {
     循环体
     步进表达式
} while ( 布尔表达式 );

执行流程:

  • 执行顺序:①③④>②③④>②③④②不满足为止。
  • ①负责完成循环变量初始化。
  • ②负责判断是否满足循环条件,不满足则跳出循环。
  • ③具体执行的语句。
  • ④循环后,循环变量的变化情况。

4.循环语句区别

for和while的区别:

  • 控制条件语句所控制的那个变量,在for循环结束后,就不能再被访问到了,而while循环结束还可以继续使用,如果你想继续使用,就用while,否则推荐使用for。原因是for循环结束,该变量就从内存中消失,能够提高内存的使用效率。
  • 在已知循环次数的时候使用推荐使用for,循环次数未知的时推荐使用while

while和do...while的区别:

  • while循环的循环条件为false,就一次也不执行。
  • do...while循环无条件执行一次循环体,即使我们将循环条件直接写成false,也依然会循环一次。这样的循环具有一定的风险性。
  • 如果循环条件为true,则2种循环没有区别

 5.break和continue

1.break:

我们使用 for循环 while循环 可以让程序重复执行代码.但是有时候我们可能在循环的中途让循环停下来.需要使用 break。

使用场景:跳出循环,提前结束循环。

2.continue:

使用场景:结束本次循环,继续执行下一次循环。

 
 
 
 
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值