Java 入门教程-3

1. if 语句

if 语句根据条件的真假决定是否执行某段代码。

1.1 单分支 if

1
2
3
if (关系表达式) {
语句体;
}

关系表达式为 true 时执行语句体,为 false 时跳过。

1.2 if-else 双分支

1
2
3
4
5
if (关系表达式) {
语句体1;
} else {
语句体2;
}

1.3 多分支 else if

1
2
3
4
5
6
7
if (关系表达式1) {
语句体1;
} else if (关系表达式2) {
语句体2;
} else {
语句体3;
}

从上往下依次判断,命中哪个分支就执行哪个分支,后面的不再判断。

注意:条件判断用 == 比较数值时,应写成 a == 9,不要写成赋值 a = 9

2. switch 语句

当判断的是“一个变量的值等于哪种情况”时,switch 比一长串 else if 更清晰。

1
2
3
4
5
6
7
8
9
10
11
12
13
switch (表达式) {
case1:
语句体1;
break;

case2:
语句体2;
break;

default:
语句体n;
break;
}

执行流程:先计算表达式的值,与每个 case 的值比较;命中则执行对应语句体,遇到 break 结束整个 switch;若没有匹配项,则执行 default

注意事项:

  • 表达式的类型:byteshortintcharString(JDK 7 起支持)、枚举
  • break 若漏写,会“穿透”继续执行下一个 case,可利用这点合并多个值
  • default 可省略,习惯放在最后

利用“穿透”合并多个值,例如判断月份属于哪个季节:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
int month = 4;
switch (month) {
case 3:
case 4:
case 5:
System.out.println("春季");
break;

case 6:
case 7:
case 8:
System.out.println("夏季");
break;

default:
System.out.println("秋冬季节");
break;
}

3. for 循环

适合“知道循环次数”的场景。

1
2
3
for (初始化语句; 循环条件; 步进语句) {
循环体;
}

执行顺序:先执行一次 初始化语句;然后判断 循环条件 是否为 true,为真则执行循环体,再执行 步进语句;随后再次判断条件……直到条件为 false 结束。

4. while 循环

适合“不知道循环多少次,只知道什么时候结束”的场景。

1
2
3
while (循环条件) {
循环体;
}

执行顺序:条件为 true 继续循环,为 false 终止。

5. do-while 循环

1
2
3
do {
循环体;
} while (循环条件);

与 while 的区别:先执行一次循环体,再判断条件。即使条件一开始为 false,循环体也至少执行一次。

6. 循环中的关键字

  • continue:跳过本次循环中剩余的代码,直接进入下一次循环
  • break:结束整个循环(本层循环)

7. 嵌套循环

循环里再套循环就是嵌套循环。外层循环每执行一次,内层循环要完整地跑一遍。


Java 入门教程-3
https://flowerdown.org/posts/20230826-154830
作者
Unrealfeathers
发布于
2023年8月26日
许可协议