1. 什么是结构化程序?
  2. 结构化程序的优势?
  3. 结构化程序有哪些?
  4. 什么情况下使用什么结构

条件结构

当某一个或者多个条件同时成立时执行相应的代码块 这就是条件结构

语法1

if ( boolean表达式){
语句;
}

语法2

if ( boolean表达式){
语句;
//当条件成立执行
}else {
当条件不成立执行
}

语法3

if (true){
第一个条件成立时执行
} else if (true){
第二个条件成立时执行
}else {
上述条件都不成立时执行
}

总:


  • boolean表达式: 必要参数 这个表达式返回的是一个布尔值 可以直接是一个表达式 也可以是一个布尔变量也可以是一个关系表达式
  • 语句 可以是一条或者多条语句 当boolean的表达式的结果值为true时才会执行else代码块中是当结果为false时执行
  • if{}else{}可以多个联合使用 也可以嵌套使用
  • 当{}中只有一条语句时可以省略{}不写

swhitch多分支

语法:

switch (用于判断的参数) {
case 常量值1:
//执行的语句
break;
case 常量值2:
//执行的语句
break;
case 常量值n:
//执行的语句
break;
default:
//执行的语句
break;
}

总:


  • 用于判断的参数可以是整形 字节 字符 字符串 也可以是enum (枚举类型) 常量值 可以是整形 也可以是字符型 也可以是字符串类型
  • break 表示跳出整个switch 语句 可以省略如果省略 就会执行下一个case语句直到找到下一个break;
  • default 表示没有匹配到任何的case语句 就会执行 可以省略 区别在于匹配不到所有的case语句直接跳出 switch

while循环语句

场景: 一个条件控制是否继续执行这个语句

语法:

while(条件表达式){
执行语句
}

条件表达式必须是一个boolean类型 可以是表达式 也可以直接是一个Boolean值 当条件为真时会一直执行 当条件为假时 会跳出循环

语法2:

do{
语句1;
}while(表达式){
语句2;
}
  • 先执行一次do…while 循环之后再判断条件是否满足 如果满足会继续执行 如果不满足就会跳过
    也就是说do…while循环至少执行一次

for循环语句

语法1:

for(表达式1;表达式2;表达式3){
循环体;
}

执行过程:


  1. 先执行表达式1
  2. 判断表达式结果是否为真如果为真就执行 如果为假就跳过
  3. 执行表达式3
  4. 执行循环体
  5. 返回(2)继续判断是否成立 往复循环 直到条件不成立


  • 表达式1 通常是赋值表达式 负责循环的起始值
  • 表达式2 通常是一个关系表达式 用于控制循环的变量允许的范围进行比较 也可以是一个boolean表达式
  • 表达式3 通常是 赋值表达式 一般是表达式1变量自增或者自减

语法2:(增强for)

for (变量类型 变量x : 遍历对象:) {
引用变量x的语句;
}

  • 变量x不需要初始化
  • 遍历对象: 遍历对象为 数组 集合 等内容
  • 依次访问数组或者集合中的内容

结构化程序 可以根据情况嵌套再一起使用

break也可以跳入到指定的语句中

语法:

标签名字 : 循环体 {
break 标签名;
}

  • 标签名 任意标识符
  • 循环体: 任意循环语句
  • break 标签名 跳到指定的循环体 此循环体标签名必须和 break 庙前名一致;
    例:

Look:for (String arg : args) {
String arg1 = args[Integer.parseInt(arg)];
if (arg1=="look"){
break Look;
}
}

continue 语句是对break语句做的补充 它不是跳出循环体而是 跳到本次循环结束前的语句 开始重新执行循环 for循环 和do…while while才能使用 for循环遇到 continue 是直接执行语句3 然后判断条件是否成立如果成立执行 不成立跳过 while 和 都…while 是直接执行条件语句 continue 也支持标签功能 语法break 一样