Java Switch 语句执行流程详解:程序输出结果及原因分析

程序代码:

public class E {
	public static void main (String args[ ]) {
		char c = '\u0000';
		for(int i=1;i<=4;i++) {
			switch(i) {
			case 1: c = 'J';
				System.out.print(c);
			case 2: c = 'e';
				System.out.print(c);
				break;
			case 3: c = 'p';
				System.out.print(c);
			default: System.out.print('好');
			}
		}
	}
}

输出结果:

Jep好好好

原因解释:

  • 第一次循环 (i=1)

    • 进入 case 1,将 c 的值设置为 'J',然后输出 'J'。
    • 接着执行 case 2,将 c 的值设置为 'e',然后输出 'e'。
    • 由于没有 break 语句,继续执行 case 3,将 c 的值设置为 'p',然后输出 'p'。
    • 最后进入 default 语句,输出 '好'。
    • 第一次循环结束后,输出为 Jep好。
  • 第二次循环 (i=2)

    • 直接进入 case 2,将 c 的值设置为 'e',然后输出 'e'。
    • 执行 break 语句,跳出 switch 语句。
    • 第二次循环结束后,输出为 e。
  • 第三次循环 (i=3)

    • 进入 case 3,将 c 的值设置为 'p',然后输出 'p'。
    • 由于没有 break 语句,继续执行 default 语句,输出 '好'。
    • 第三次循环结束后,输出为 p好。
  • 第四次循环 (i=4)

    • 进入 default 语句,输出 '好'。
    • 第四次循环结束后,输出为 好。
  • 最终输出结果:

    • 将所有循环的输出结果拼接起来,最终输出结果为 Jep好好好。

总结:

该程序展示了 switch 语句的执行流程以及 break 语句在其中的重要作用。如果没有 break 语句,switch 语句会继续执行后面的 case 语句,直到遇到 break 语句或 switch 语句结束。因此,在使用 switch 语句时,需要注意 break 语句的放置位置,以确保程序按照预期逻辑执行。

Java Switch 语句执行流程详解:程序输出结果及原因分析

原文地址: https://www.cveoy.top/t/topic/fGd3 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录