您的位置:首页 > 新闻 > 资讯 > Java流程控制03:Switch选择结构

Java流程控制03:Switch选择结构

2025/4/12 19:16:57 来源:https://blog.csdn.net/zhangjinajian759/article/details/141282525  浏览:    关键词:Java流程控制03:Switch选择结构

       视频链接:Java流程控制05:Switch选择结构_哔哩哔哩_bilibiliicon-default.png?t=N7T8https://www.bilibili.com/video/BV12J41137hu?p=37&vd_source=b5775c3a4ea16a5306db9c7c1c1486b5        Java 中的 switch 选择结构是一种控制流程语句,它允许程序根据一个变量的值,从几个可能的代码路径中选择一个来执行。switch 语句的语法如下:

switch(expression){case value1:// code to be executed if expression = value1;break;case value2:// code to be executed if expression = value2;break;// you can have any number of cases;default:// code to be executed if expression doesn't match any cases;
}

   switch 表达式(expression)的类型可以是 byteshortintchar 或 String(从 Java 7 开始)。每个 case 后面的值(value1, value2, 等等)是要与表达式的值进行比较的固定值。如果有匹配,则执行对应的代码块。break 关键字用于退出 switch 语句。default 块是可选的,当没有任何 case 匹配时执行

代码举例1:

int day = 3;
switch(day){case 1:System.out.println("Monday");break;case 2:System.out.println("Tuesday");break;case 3:System.out.println("Wednesday");break;case 4:System.out.println("Thursday");break;case 5:System.out.println("Friday");break;case 6:System.out.println("Saturday");break;case 7:System.out.println("Sunday");break;default:System.out.println("Invalid day");
}

        在这个例子中,switch 表达式是 day,它会根据值(1 到 7)来选择对应的代码块执行。如果 day 的值不是 1 到 7 之间的数,则会执行 default 块中的代码。

代码举例2:

public class SwitchDemo01 {public static void main(String[] args) {char grade = 'C';switch (grade){case 'A':System.out.println("优秀");break;case 'B':System.out.println("良好");break;case 'C':System.out.println("及格");break;case 'D':System.out.println("再接再厉");break;case'E':System.out.println("挂科");break;default:System.out.println("输入错误");}}
}

从JDK7开始Switch开始支持String类型比较;

代码举例3:

public class SwitchDemo02 {public static void main(String[] args) {String name = "李四";//jdk7新特性,表达式可以是字符串;switch (name){case "张三":System.out.println("张三");break;case "李四":System.out.println("李四");break;case "王五":System.out.println("王五");break;default:System.out.println("输入错误");}}
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com