3.Java语言流程控制语句(顺序、分支、循环)

流程控制语句:

流程:完成一件事情的顺序

流程控制语句:用来控制程序的执行顺序

分类:

         1.顺序结构

         2.选择结构

         3.循环结构

顺序结构:

从上至下的顺序,按照主函数中的代码顺序执行。

选择结构:

让代码选择性的执行 

包含两种:if语句switch语句

1.if语句的第一种格式:

                        计算一个布尔表达式的值

                               如果ture 执行语句体

                               如果false,没有然后(跳到结束)

            格式:

                   if(布尔表达式){

                        语句体

                   }

           例子:是男的,打印进男厕所

2.if语句的第二种格式:         

                        计算一个布尔表达式的值

                               如果ture 执行语句体1

                               如果false,执行语句体2

            格式:

                   if(布尔表达式){

                        语句体1

                   }else{

                        语句体2

                   }

            例子,是男的打印进男厕所,否则进女厕所

3.if语句的第三种格式:

                       计算一个布尔表达式/条件判断 第一种格式第二种格式的特点

                       有多个布尔表达式/条件判断

                       哪个成立就执行对应的语句体就跳到结束位置

                       都不成立执行默认的语句体

                       格式:

                               if(布尔表达式1){

                                    执行语句体1

                               }else if (布尔表达式2){

                                   执行语句体2

                              }else if (布尔表达式3){

                                  执行语句体3

                              }...

                              else{

                                 执行默认语句体

                              }

 

4.if语句的第二种格式和三元运算符:

 if-else 语句体都是对同一个变量进行赋值时,三元运算符相对简单些

例如:比较两个数的大小,大的赋值给第三个数。三元运算符只需要一行语句

5.switch语句:

            当我们计算,一个表达式的值,跟一堆的不相同的常量进行比较

            匹配上就执行对应的语句体

            都不匹配,执行默认的语句体

 

            格式:

                   // 表达式的结果只能是byte/short/char/int/String

                    switch(表达式){

                          case  常量1:

                                执行语句体1

                                break;

                         case  常量2

                                执行语句体2

                                break;

                         case  常量3

                                执行语句体3

                                break;

                          ....

                         default:

                               执行默认语句体

                               break;

                     }

匹配上哪一个分支 ,就执行它的语句体,跳到结束位置。 

6.switch语句的穿透性:

如果你省略了标准格式中的break,就会发生穿透性

直接执行分支的语句体,不作匹配,直到结束

当多个分支需要执行相同的语句体时,使用穿透性可以简化代码

如果某一个匹配的值没有写break语句,那么他的下一个匹配项不会做匹配直接执行,知道遇到先一个带有break的匹配项执行完再跳转到switch语句结尾,或者此匹配项是最后一个,执行完直接结束

循环结构:

让相同的代码被重复执行,指定重复的次数

包含三个 语句:for、while、do-while

1.for语句:

          格式

              for( ①初始化语句; ②循环条件;  ④步进表达式  ){

              //被重复执行的代码 -③循环体

              }

          执行流程先执行初始化语句(循环过程中只执行一次)---->判断是否满足循环条件(满足)---->执行循环体语句--->执行步

进表达式---->接着判断是否满足循环条件(满足)---->循环体------>执行步进表达式......

循环流程就是①②③④->②③④->②③④->②③④->②③④->。。。当②值为false(也就是不满足循环条件时),跳到结束位置

2.while语句:

          格式

                ①初始化语句

                while(②循环条件){

                      ④循环体

                      ③步进语句

                }

         

          执行流程先执行初始化语句(循环过程中只执行一次)---->判断是否满足循环条件(满足)---->执行循环体语句--->执行步

进表达式---->接着判断是否满足循环条件(满足)---->循环体------>执行步进表达式......

循环流程就是①②③④->②③④->②③④->②③④->②③④->。。。当②值为false(也就是不满足循环条件时),跳到结束位置

3.do-while语句:

          格式

                ①初始化语句

                do{

                      ③循环体

                      ④步进

                }while(②循环条件);(这里有分号)

          执行流程:先执行初始化语句--->执行循环体---->执行步进语句--->判断循环条件.....直到条件不满足退出

三种循环总结:

for最常用                          计数器有明确的范围1-100

while比较常用                   IO流

do-while不是很常用           必须执行一次循环体

区别:

1,do--while 无论循环条件是否满足至少执行一遍

2,除了for其他循环的计数器,在循环结束时还能使用

break 语句

1,在switch语句中使用,跳到结束位置

2,在三种循环中也可以使用,立刻马上,跳到循环的结束位置

格式

break;

continue语句

只能在循环中使用

立刻马上跳过本次循环,可以继续下一次

格式:continue;

死循环

不能自己结束的循环,就是死循环

常见的几种形式

1,for

2.while

3.do-while

死循环的出现情况:

1。程序员写循环没有步进

2。程序设计的需要

3。死循环可以退出  写上一个条件,里面写上一个break;

嵌套循环

一个循环(外层循环)里面可以包含另一个循环(内层循环)

例子

      for( ... ){

            for(...){

            }

      }

 

 

当发现几个循环代码相同时,我们可以用嵌套循环来简化代码(如打印长方形)

 

嵌套号可以用在if语句当中