欢迎光临散文网 会员登陆 & 注册

流程控制语句

2020-11-20 14:11 作者:自学Python的小姐姐呀  | 我要投稿

流程控制语句的内容
顺序结构;判断(分支选择)结构;循环结构
顺序结构
程序是从上往下进行加载,按照代码的编写顺序进行执行.
判断(分支选择)结构
if else语句
1.if 单支情况
if语句的格式:

  • 1if (布尔类型表达式/布尔类型值) {

  • 2

  • 3 // 语句体。。。。

  • 4

  • 5 }

if语句(单支)的执行流程:

  • 首先判断布尔表达式的结果是false还是true

  • 如果是true就执行{}里面方法体的内容

  • 如果false就不执行{}里面的方法体内容,程序往后加载

2.if else 双支情况
格式:

  • 1 if (布尔类型表达式) {

  • 2

  • 3 // 语句体内容1;

  • 4

  • 5 } else {

  • 6

  • 7 // 语句体内容2;

  • 8

  • 9 }

if else 多支的执行流程:

  • 首先判断布尔类型表达式看它的结果是true还是false

  • 如果是true,就执行语句体内容1

  • 如果是false,就执行语句体内容2

3.if … else if … else语句 多支情形
格式:

  • 1 if(布尔类型表达式1) {

  • 2

  • 3 // 方法体内容1。。。。

  • 4

  • 5 } else if (布尔类型表达式2) {

  • 6

  • 7 // 方法体内容2.。。。。。

  • 8

  • 9 }

  • 10

  • 11 .........

  • 12

  • 13 } else if (布尔类型表达式n) {

  • 14

  • 15 // 方法体内容n。。。。

  • 16

  • 17 } else {

  • 18

  • 19 // 方法体内容n+1。。。。

  • 20

  • 21 }


执行流程:

  • 首先判断布尔类型表达式1看其结果是true还是false

  • 如果是true,就执行方法体内容1

  • 如果是false,就继续判断布尔类型表达式2,看其结果是true还是false

  • 如果是true,就执行方法体内容2

  • 如果是false,就继续判断布尔类型表达式…,看其结果是true还是false

  • 如果以上所有的布尔类型表达式都为false,最后执行else{}里面的方法体内容n+1。

4.if … if … else …else语句 嵌套情形
格式:

  • 1 if (布尔类型表达式1) {

  • 2

  • 3 // 方法体内容1

  • 4

  • 5 。。。。

  • 6

  • 7 if (布尔类型表达式2){

  • 8

  • 9 // 方法体内容2

  • 10

  • 11 。。。。。。

  • 12

  • 13 } else {

  • 14

  • 15 // 方法体内容3

  • 16

  • 17 。。。。。

  • 18

  • 19 }

  • 20

  • 21 } else {

  • 22

  • 23 // 方法体内容4

  • 24

  • 25 。。。。。。

  • 26

  • 27 }


执行流程:

  • 首先判断布尔类型表达式1,看其结果是true还是false

  • 如果是true,就执行方法体内容1,在继续判断布尔类型表达式2,看其结果是true还是
    false,如果是true,就执行方法体内容2.
    如果是false,就执行方法体内容3。。。。

  • 如果是false,就执行方法体内容4,之后加载后面的程序。


If语句和三目运算符的互换
If语句和三目运算符的互换
int num01 = 10;

int num02 = 20;

// 定义一个变量,保存num01和num02的最大值 int c;

if (num01 > num02) { c = num01;

} else { c = num02;

} // 上面的语句我们也可以使用三目运算符 c = num01 > num02 ?

num01 : num02;

switch case语句
格式:
switch(表达式/变量) { case 常量值1: // 语句体内容1 break; case 常量值2: // 语句体内容2 break; ..... default: // 语句体n break; }
执行流程:

  • 首先计算出表达式中的值

  • 其次,依次和case后面的常量值做比较,一旦有对应的值,就会执行相应的语句体内容,

在执行的过程中,遇到break就会结束switch case语句。

  • 最后,如果所有的case都和表达式的值不匹配,就会执行default中的语句体内容,然后switce case语句结束。


注意:在switch语句中,表达式的数据类型,可以是byte/short/int/char/enum(枚举),JDK1.7之后可以接收字符串类型。

case的穿透性
在switch语句,如果case后面的break省略掉,将会出现穿透现象。不会判断后面的case情形值,直接加载后面的case中的方法体内容,直到遇到break结束。


循环结构 【重点】
: 【三种基本循环】for、while、do-while
循环结构组成部分:一般可以分成4部分

  1. 初始化语句:在循环最初开始时,需要定义一个初始化的变量,而且只会定义一次。

  2. 条件判断(结束条件):如果条件成立满足,进入循环,如果条件不满足,则退出循环

  3. 循环体内容: 重复要做的事情内容,可能包含很多条语句(事情是有规律的)

  4. 迭代语句(步进语句):每次循环结束之后需要执行步进语句(跌代语句),对初始化的变量做步进(迭代)。

for循环语句结构
格式:
for(1.初始化语句;2.条件判断表达式;4.迭代语句) { // 3.循环体内容 }
执行流程:

  • 执行顺序: 1–>2–>3–>4–>2–>3–>4–>2—>3–>4…2不满足为止。

  • 1 负责循环变量的初始化

  • 2 负责判断是否满足循环条件,不满足退出循环

  • 3.负责执行具体的语句(逻辑功能)

  • 4.负责变量的迭代


while循环语句
格式:
// 1.初始化语句; while(2.判断条件) { // 3.循环体内容 // 4. 步进语句; }
执行流程:

  • 执行顺序:1–>2–>3–>4–>2–>3–>4–>2–>3—>4—>…2不满足为止

  • 1 负责循环变量初始化

  • 2 负责判断是否满足循环条件,不满足则跳出循环

  • 3 负责执行具体语句,实现某个功能。

  • 4 迭代循环变量

do-while循环语句
格式:
// 1. 初始化语句 do { // 3.循环体内容 // 4.迭代语句 } while (2.判断条件);
执行流程:

  • 执行顺序: 1–>3—>4—>2—>3—>4---->2---->3—>4—>…2不满足为止

  • 1负责定义循环变量,并且进行初始化

  • 2负责判断是否满足循环条件,不满足则跳出循环

  • 3负责执行具体语句,实现某个功能

  • 4迭代循环变量

备注:无条件执行一次循环体内容,即使判断条件是不满足也依然循环一次,这样的循环是有风险的,不建议使用。


for和while的区别

  • 控制语句中所涉及到的循环变量,当for循环结束后,定义的循环变量不能再被访问到,而while循环结束后依然可以被访问到。如果不继续使用循环变量,建议使用for循环,因为for循环结束后,循环变量就会从内存中消失,能够提高内存的使用效率。

  • 在已知循环次数的情况下,建议使用for循环,当循环次数不确定时使用while循环。

跳出语句
break,continue两个语句
break
使用情形:终止switch语句或者循环语句
备注:离开了使用场景对于break来说没有意义。


对编程感兴趣的可以点击

java面向对象编程_java79节课精讲面对对象

流程控制语句的评论 (共 条)

分享到微博请遵守国家法律