Java基础篇3——流程控制
1、顺序结构
正常代码的流程即是顺序流程
2、分支结构
2.1、if-else分支
if(条件表达式) {语句块1;
}
if(条件表达式) {语句块1;
} else {语句块2;
}
if(条件表达式1) {语句块1;
}
else if(条件表达式2) {语句块2;
}
else {语句块3;
}
2.2、switch-case分支
switch()中支持的数据类型有:byte、short、char以及int类型,从jdk1.5 开始支持枚举类型,从jdk1.7开始支持String类型
switch(变量/表达式) {case 字面值1: 语句块1; break;case 字面值2: 语句块2; break;...default:语句块n;
}
3、循环结构
- continue:跳过本次循环体,开始下次循环
- break:打破最近一层的循环
3.1、for循环
for(初始化表达式; 条件表达式; 修改初始值表达式) {循环体;
}
for(;😉 表无限循环
执行顺序
- 初始化表达式
- 条件表达式
- 循环体
- 修改初始值表达式
- 条件表达式
- 循环体
- 修改初始值表达式
- …
3.2、while循环
while(条件表达式) { 循环体;
}
while(true){};while(1){};都表无限循环
执行顺序
- 条件表达式
- 循环体
- 条件表达式
- 循环体
3.3、do-while循环
do {循环体;
} while(条件表达式);
执行顺序
- 循环体
- 条件表达式
- 循环体
- 条件表达
3.4、循环结构的比较
-
while循环和for循环完全可以互换,当然推荐使用for循环
-
while循环更适合于明确循环条件但不明确循环次数的场合中
-
for循环更适合于明确循环次数或范围的场合中
-
while(true) 等价于 for(;😉 都表示无限循环
-
do-while循环主要用于至少执行一次循环体的场合中