switch语句和case语句的特性 您所在的位置:网站首页 在与switch语句配套的case语句中所使用的 switch语句和case语句的特性

switch语句和case语句的特性

2024-06-26 21:42| 来源: 网络整理| 查看: 265

**

switch语句和case语句的特性

**

switch语句格式: switch(表达式) { case 常量值1: 语句体1; break; case 常量值2: 语句体2; break; ... default: 语句体n+1; break; } 执行顺序: 首先计算表达式的值;然后,和case的值依次进行比较,遇到相对应的值就会匹配对应的结果,遇到break,就会退出整个循环;如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序结束掉。; 在这里插入图片描述 public class Dome01 { // 判断星期几 public static void main(String[] args) { int day=6; switch (day){ case 1: System.out.println("星期一"); break; case 2: System.out.println("星期二"); break; case 3: System.out.println("星期三"); break; case 4: System.out.println("星期四"); break; case 5: System.out.println("星期五"); break; case 6: System.out.println("星期六"); break; case 7: System.out.println("星期七"); break; default: System.out.println("你输入的数字有误"); } } }

在这里插入图片描述 switch语句中,表达式的数据类型,可以是byte,short,int,char,enum(枚举),JDK7后可以接收字符串。

case语句的穿透性 // 没有break语句的时候 public class Dome01 { // 判断星期几 public static void main(String[] args) { int day=4; switch (day){ case 1: System.out.println("星期一"); case 2: System.out.println("星期二"); case 3: System.out.println("星期三"); case 4: System.out.println("星期四"); case 5: System.out.println("星期五"); case 6: System.out.println("星期六");; case 7: System.out.println("星期七"); default: System.out.println("你输入的数字有误"); } } }

在这里插入图片描述 当缺少break语句的时候,case将出现穿透现象,也就是不会在判断下一个case的值,直接向后运行,直到遇到break,或者整体switch结束。

利用case语句的穿透性

case语句拥有穿透性,我们可以根据这个特性,判断这天属于本月的上旬,中旬或者下旬。 我们规定1-10为上旬,11-20为中旬,21-31为下旬。

public class Dome01 { public static void main(String[] args) { int day=14; switch (day){ case 1: case 2: case 3: case 4: case 5: case 6: case 7: case 8: case 9: case 10: System.out.println("今天是"+day+"日,本月上旬"); break; case 11: case 12: case 13: case 14: case 15: case 16: case 17: case 18: case 19: case 20: System.out.println("今天是"+day+"日,本月中旬"); break; case 21: case 22: case 23: case 24: case 25: case 26: case 27: case 28: case 29: case 30: case 31: System.out.println("今天是"+day+"日,本月下旬"); break; default: System.out.println("你输入的数字有误"); } } }

在这里插入图片描述 由于case存在穿透性,因此初学者在编写switch语句时,必须要写上break。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有