Java 流程控制笔记
1.分支结构
-
当需要进行条件判断并做出选择时,使用分支结构
-
if分支结构
-
// 2.使用if分支结构判断是否成年并给出对应的提示 if(age >= 18) { System.out.println("年满18岁"); }
-
-
if-else分支结构
-
只有两种情况,每次只有一个可以执行
-
// 2.使用if-else模拟考试成绩查询并给出相应的提示 if(score >= 60) { System.out.println("You passed the exam."); } else { System.out.println("You failed to pass the exam."); }
-
-
if-else if-else分支结构
-
有N种情况可供选择(N >= 3)
-
// 2.使用if-else if-else分支结构的使用,模拟火车票的购买 if("军人".equals(str)) { System.out.println("请免费乘车"); } else if("学生".equals(str)) { System.out.println("请购买半价票"); } else { System.out.println("请购买全价票"); }
-
// 个人所得税 = 本月应纳税所得额 * 对应的税率 - 速算扣除数
-
2.switch-case分支结构
- default可以不必写break
- case穿透:缺少break(如果default不在块语句的末尾且没有break;那么会造成case穿透,执行default下面的case选项。)
- switch()中支持的数据类型有:byte、short、char以及int类型
- 从jdk1.5开始支持枚举类型
- 从jdk1.7开始支持String类型
3.循环结构
-
for循环
-
for(初始化表达式; 条件表达式; 修改初始值表达式) {循环体;}
-
-
while循环
-
while(条件表达式) {循环体;}
-
-
do-while循环
-
do {循环体;} while(条件表达式);
-
至少执行一次循环体的场合中
-
while循环和for循环比较:
- 推荐使用for循环
- while循环更适合明确循环条件但不确定循环次数的场合中
- 死循环 while(true) { }
- for循环更适合于明确循环次数或范围的场合中、
- 死循环 for(; ; ) { }
4.关键字
-
continue
- 用于结束本次循环,开始下次循环
-
break
- 用于退出当前语句块,在循环中用于退出循环
- 一般与for(;;)这种没有循环条件的循环搭配使用(无限循环,死循环)
-
break + 标号
-
跳出多层循环
-
outer: for (...) { for(...) { break outer; // 跳出带有outer标号的for循环 } }
-
5.考点
while后面添加 “;”,结果造成循环体无法正确执行
- while后面的分号等价于{;},单个分号被称为空语句,啥也不干,起到延时作用
// 典故:十动然拒(笔试考点:分号)
int i = 1;
while(i <= 10000); {//while(i <= 10000) {;} //等价于此语句,分号为空语句,啥也不干,可以用于延时
System.out.println("I love you.");
i++;
}