Java基础(开关分支语言switch)

29 篇文章 0 订阅

语法

switch(表达式){
 case 值1: 判断表达式的值是否在值1,如果相等则执行代码块1
 代码块1; break; 执行完成后,如果没有break,则自动执行后续语句,但是不进行判
定。如果有break则立即中断switch的执行,跳到switch块的下一局继续执行
 多个case语句:
... ...
 default:如果所有的case都不能成立,则执行代码块n
代码块n; break;
}
语法点
  • 表达式的计算结果可以是整型【不允许long类型】,可以是char,同时允许是字串类型[String] 也可以是枚举类型
  • case值类型必须和switch条件类型相同或者能隐式转换为switch表达式类型
  • case值必须唯一,不能与其它的重复
  • default的位置没有特殊要求,但是一定是所有的case值不相等时才会执行。但是为了增强可读 性,所以一般建议写在所有的case之后

知识点了解完后我们开始做项目

需求:输入月份,显示对应的本月的天数

System.out.println("请输入月份:"); 
Scanner sc = new Scanner(System.in); 
int m = sc.nextInt(); 
switch (m) { 
case 1: 
case 3: 
case 5: 
case 7: 
case 8: 
case 10: 
case 12: 
    System.out.println("本月31天"); 
    break; 
case 2: 
    System.out.println("请输入年份:"); 
    int year = sc.nextInt(); 
    if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) { 
        System.out.println("本月29天"); 
} else
        System.out.println("本月28天"); 
  break; 
case 4: 
case 6: 
case 9: 
case 11: 
System.out.println("本月30天"); 
break; 
default: //default写在switch内部的任何位置上实际都不会影响执行逻辑,但是不建议, 因为会影响可读性
        System.out.println("月份错误!"); 
        break; 
        } 
    } 
}

注意一定要注意语法格式!!!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值