📐 顺序结构
代码逐行执行,执行逻辑为线性逻辑
🔀 选择结构
代码遇到选择结构根据关系表达式的不同计算结果执行不同的操作
📌 if语句
📝 语法结构
|
|
💡 执行流程
- 计算关系表达式
- 若为 true 执行语句体内的语句,若为 false 则跳过语句体内的语句
- 继续执行语句体外的语句
📌 if-else语句
📝 语法结构
|
|
💡 执行流程
- 计算关系表达式
- 若为 true 执行语句体1内的语句,若为 false 则执行语句体2内的语句
- 继续执行语句体外的语句
📌 if-else if语句
📝 语法结构
|
|
💡 执行流程
- 计算关系表达式1
- 若为 true 执行语句体1内的语句,若为 false 则计算关系表达式2
- 若为 true 执行语句体2内的语句,若为 false 则计算关系表达式3
- 以此类推
- 若所有的关系表达式为 false 则执行语句体n+1
📌 switch语句
📝 语法结构
|
|
💡 执行流程
- 计算表达式的值
- 依次与 case 后面的值比较。若有对应的值就会执行对应的语句体,在执行过程中遇到 break 结束整个 switch 语句
- 若与所有的 case 后面的值不匹配,便会执行 default 内的语句体
📋 格式说明
- 表达式取值只能为 byte、short、int、char、enum、string
- case 后面是与关系式匹配的值,只能是字面量不能说变量且不允许重复
⚠️ 注意事项
default可以放在任意位置,也可以省略不写- 不写
break会发生 case 穿透问题,在 case 匹配过程中若没有 break 会执行下一个 case 的语句体,直到遇到 break / 大括号
✨ JDK12的新特性
📝 语法格式
|
|
🔄 循环结构
📌 for循环
📝 语法格式
|
|
💡 执行流程
- 执行初始化语句
- 执行条件判断语句,检验其结果
- 若为 false,循环结束
- 若为 true,执行循环体语句
- 执行条件控制语句
- 单次循环结束后继续执行条件判断语句
📌 while循环
📝 语法格式
|
|
💡 执行流程
- 执行初始化语句
- 执行条件判断语句,检验其结果
- 若为 false,循环结束
- 若为 true,执行循环体语句
- 执行条件控制语句
- 单次循环结束后继续执行条件判断语句
提示
for和while的对比
相同点:运行规则相同
不同点
- **for 循环中控制循环的变量在循环结束后无法被访问,while 循环中可以继续使用
- **for 循环限定循环次数和范围,while 循环不知道循环次数
📌 do-while循环
📝 语法结构
|
|
💡 执行流程
- 执行初始化语句
- 先执行条件判断语句
- 执行条件控制语句
- 单次循环结束后继续执行条件判断语句
- 若为 false,循环结束
- 若为 true,执行循环体语句
⚙️ 循环控制语句
break:立即终止当前所在的循环
continue:跳过当前循环的剩余部分,直接进入下一次循环
在嵌套循环中,break 和 continue 仅影响它所在的最近一层循环