java开发的第三个博客!(流程控制语句的面试题)

1.default可以省略吗?

  • 可以,但是不建议,因为可以给出额外的提示;

2. default一定要放在最后面吗?

  • 不一定,可以放在switch语句的合法位置

3.case后面能跟变量吗?

  • 能,只能是常量,如果有多个case,要求常量不能相同

4.break可以省略吗?

  • 最后一个break可以省略;
  • 其他的最好不要省略,否则会出现case穿透造成你不想要的数据

5.什么是case穿透?

  • 没有遇到break或switch语句的},下面的case或者default不用判断直接执行里面的东西,
  • 直到(switch语句的结束条件要么遇到break要么遇到switch语句的})才结束,停止

6.case穿透的作用?

  • 如果多个case里面要做的事情是一样的,那就可以利用case穿透提高代码的复用性

7.什么时候使用switch语句?什么时候使用if语句?

  • 因为switch语句的case的值只能是常量,固定值,如果是固定值,推荐使用switch语句,
  • 如果不是固定的值,推荐使用if语句,如果你不知道使用什么语句,就用if语句!!!

8.do…while循环跟其他两种循环的区别

  • do…while先执行一次在判断
  • 其他两种循环先判断后执行
  • 当条件不满足的时候,do…while比其他两种循环至少多执行了一次循环体

9.for循环与其他两种循环的区别

  • for循环里面定义的变量在循环的外面不能继续访问,循环使用完毕就从内存中消失
  • 其他两种循环的变量定义在循环的外面,循环结束后还可以继续使用

10.什么时候使用for循环,什么时候使用while循环?

  • 如果循环次数固定的时候推荐for循环,因为for循环里面定义变量在循环的外面不能继续访问,
  • 如果循环的次数不固定推荐使用while循环,如果你不知道使用哪种循环,就用for循环,原因同上

11.你能写出三种不同的死循环吗?

while (true) {
     
		//循环体
	  	}
do {
     
	//循环体
} while (true);
for (;;) {
     
		//循环体
	  }

你可能感兴趣的:(java,编程语言)