选择语句
Java 支持两种选择语句:if 和 switch 语句。
在 switch 语句中,case 后面的值必须是唯一的常量表达式,switch()
中的类型在 JDK7 之前必须为 byte、short、int、char 中的一个,从 JDK7 开始,类型可以为 String。使用 String 类型的开销较大,非必要不使用。
Java 编译器编译 switch 语句时,检查每一个 case 子句中的常量,根据这些常量创建一个跳转表(jump table),表里面存储常量对应的语句的执行地址。switch 语句比和它等价的 if 语句的执行效率高,因为只需要比较相等性。
迭代语句
while、do while、for 语句。
//for-each 循环
for (var variable: collection) {
// 处理语句
}
在 for 和 for-each 语句中,可以使用局部变量类型推导。
跳转语句
break、continue 和 return 语句。
带标签的 break 语句跳转到紧跟着标签指定的语句(或者块)的下一条语句处开始执行。break label 只能在 label 标注的块里面使用。
class Break {
// 输出:i: 0, 0 1 2 3 4 5 6 7 8 9 complete.
public static void main(String[] args) {
out: for (int i = 0; i < 3; i++) {
System.out.print("i: " + i + ", ");
for (int j = 0; j < 30; j++) {
if (j == 10) {
break out;
}
System.out.print(j + " ");
}
}
// break out 跳转后,从这条语句开始执行
System.out.println(" complete.");
}
}
参考
[1] Herbert Schildt, Java The Complete Reference 11th, 2019.