一.while和do…while的区别?
- 使用
while
循环,当你需要在条件满足时执行循环,但不希望在条件一开始就不满足的情况下执行任何代码。 - 使用
do...while
循环,当你需要确保循环体至少执行一次,然后根据条件决定是否继续执行。
二.循环中,break的作用是什么?continue的作用是什么?
- break:
break
语句用于立即终止包含它的最内层循环的执行,无论循环条件是否仍然为真。- 一旦执行到
break
语句,程序流程会跳出循环体,继续执行循环之后的代码。 - 这在需要基于某个特定条件提前退出循环时非常有用。
- continue:
continue
语句用于跳过当前循环的剩余部分,并立即开始下一次循环迭代。- 这通常用于在满足某个条件时忽略当前迭代,直接进入下一次循环的条件检查和执行。
continue
只会跳过当前迭代,循环本身仍然会继续执行,直到满足退出条件。
三.jdk1.8中,swtich 支持哪些类型?jdk1.8之后版本对switch特性有哪些增强?
在 JDK 1.8 中,switch
语句支持的类型包括 byte
、short
、int
、char
、枚举类型以及 String
类型
引入了新的功能,比如 case
可以连续拼写,这在功能上等同于 if
判断中的逻辑或 ||
,以及 switch
表达式可以有返回值 。在 JDK 14 之前的版本,虽然不能直接连续书写 case
,但可以通过省略 break
来达到类似的效果 。
JDK 21 引入了模式匹配(Pattern Matching)到 switch
语句中,这使得 switch
表达式可以根据类型和模式进行匹配,提供了类型安全和更灵活的分支选择机制
四.switch…case语句中,break的作用是什么?
在 switch
...case
语句中,break
的作用是终止当前 switch
块的执行,并退出 switch
语句。具体来说:
- 终止执行: 当程序流程执行到某个
case
标签,并执行完该case
下的代码块后,如果该case
后面有break
语句,程序将立即跳出整个switch
语句,不再继续执行后续的case
代码块。 - 避免执行后续
case
: 没有break
语句的情况下,程序会继续执行到下一个case
,即使该case
的条件并不满足,这种现象称为 "fall-through"(贯穿)。break
可以防止这种情况发生。 - 控制流程:
break
允许开发者精确控制switch
语句的执行流程,确保一旦某个case
匹配成功并执行完毕后,不会继续执行其他不相关的case
。