程序控制结构一

103 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第3天,点击查看活动详情

顺序控制

概念:

程序从上而下逐行地执行,中间没有跳转。

细节:

注意变量的定义时,要先定义后使用。

分支控制

单分支(if)

基本语法:

if(条件表达式){

执行代码块;(可以有多条语句.)

}

用法说明:

当条件表达式判断结果为true,则执行代码块,否则不执行。

image.png

双分支

基本语法:

if(条件表达式){

执行代码块1;

} else{

执行代码块2;

}

用法说明:

当条件表达式判断结果为true,则执行代码块1,否则执行代码块2。

image.png

多分支

基本语法:

if(条件表达式1){

执行代码块1;

} else if(条件表达式2){

执行代码块2;

}

……

else{

执行代码块n;

}

用法说明:

当条件表达式1判断结果为true,则执行代码块1,如果条件表达式1判断结果为false,则去判断条件表达式2。如果条件表达式2判断结果为true,则执行代码块2……以此类推,当所有条件表达式判断结果都为false时,执行else的代码块。

image.png

代码演示

image.png

嵌套分支

在一个分支结构中又完整的嵌套了另一个完整的分支结构,里面的分支的结构称为内层分支外面的分支结构称为外层分支。不建议超过三层,可读性低。

switch分支结构

基本语法:

switch(表达式){

case 常量1:代码块1breakcase 常量2:代码块2breakcase 常量3:代码块3breakcase 常量n:代码块n;breakdefault 代码块;(break;)

}

用法说明

  • 表达式最后得到是一个值,对应case后面的常量值;
  • break表示退出switch分支结构,而不是退出程序;
  • 表达式匹配哪一个值,就执行相应的case的语句块,若keyi都不匹配,则执行default后面的语句块。

image.png

代码演示

image.png

细节注意

  1. 表达式值的类型应与case后面的常量类型相同,或者可以自动转换可以相互比较的类型(eg.表达式为char类型,然后case后面常量为int类型,char-->int为自动转换;
  2. switch后的表达式返回值的类型必须是:byte、short、int、char、enum(枚举)、String;
  3. case后的值是常量,不能是一个变量;
  4. break语句是用来执行一个case分支后使程序跳出当前的switch结构,如果没有,程序将会顺序执行所有case分支。