举例说明说明 switch 不写break的影响
时间: 2024-08-12 14:05:43 浏览: 55
简单举例说明C++中break和continue语句的用法
5星 · 资源好评率100%
当你在编程中使用 `switch` 语句,并没有指定 `break` 的时候,可能会导致一种称为“穿透”(fallthrough)的行为。这发生在当前的 `case` 子句执行完毕后,程序会继续检查下一个匹配的 `case`,直到遇到 `break` 或者 `switch` 结束。
例如:
```java
int dayOfWeek = 4;
switch (dayOfWeek) {
case 0:
System.out.println("星期日");
case 1:
System.out.println("星期一"); // 这里不会打印后一行,因为默认会"穿透"
case 2:
System.out.println("星期二");
}
```
在这个例子中,如果 `dayOfWeek` 等于 4(实际上是星期四),程序将执行第一个 `case 0` 后,还会自动进入 `case 1` 并打印出 "星期一",尽管它不符合条件。只有当 `dayOfWeek` 等于 0 或者某个后续的 `case` 有 `break` 语句,程序才会停止检查并跳出 `switch` 语句。
阅读全文