Java中switch语句+例题输出当前月份
学习目标:
掌握switch的使用
学习内容:
1、switch语法
<font color=#000000 size=3>
switch(表达式) {
case 常量1: 语句体1; break
....
case 常量2: 语句体2; break
default: 语句体3;
}
switch中表达式可以为short、int、byte、char
case是常量,用于与表达式进行比较,如果为false则执行下一个case,如果为true则通过后面的break跳出switch循环,执行循环外的代码,如果没有一个case被匹配到则执行default语句。
流程图如下:

代码如下:
int days = 3;
switch (days) {
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;
}
运行效果:
星期三
Process finished with exit code 0
2、switch穿透
break可以省略,但是建议不要省略,省略后会出现switch穿透,穿透后会出现当while循环体内的case被正确匹配到后,后面的case判断会失效,也就是后面的语句都会执行,直到匹配到下一个break或者跳出循环。
代码如下:
int days = 3;
switch (days) {
case 1: System.out.println("星期一"); break;
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("星期六"); break;
case 7: System.out.println("星期天"); break;
}
运行效果:
星期三
星期四
星期五
星期六
Process finished with exit code 0
3、例题:(输出当前月份)
Scanner sc = new Scanner(System.in);
System.out.println("请输入月份:");
int day = sc.nextInt();
switch(day) {
case 12 :
case 1 :
case 2 : { System.out.println("冬季"); }; break;
case 3 :
case 4 :
case 5 : { System.out.println("春季"); }; break;
case 6 :
case 7 :
case 8 : { System.out.println("夏季"); }; break;
case 9 :
case 10 :
case 11 : { System.out.println("冬季"); }; break;
default : { System.out.println("您输入的月份有误");} break;
}
请输入月份:
11
冬季
Process finished with exit code 0
总结:
switch需要熟练掌握
Java中switch语句+例题输出当前月份的更多相关文章
- Java基础知识强化19:Java中switch分支语句
java中switch语句: 这里expression控制表达式的数据类型只能是byte.short.char.int四种整型类型和枚举类型,不能是boolean类型: Java7(1.7)改进了sw ...
- 浅谈Java中switch分支语句
前言: 在程序中遇到多分支选择的时候,想必大家都喜欢用if...else if...else...语句,尤其是初学者,因为在了解switch语句之前,我也是只会用if...else语句.那么现在看完这 ...
- 品味性能之道<十一>:JAVA中switch和if性能比较
通常而言大家普遍的认知里switch case的效率高于if else.根据我的理解而言switch的查找类似于二叉树,if则是线性查找.按照此逻辑推理对于对比条件数目大于3时switch更优,并且对 ...
- 在 php 7.3 中 switch 语句中使用 continue
在 php 7.3 中 switch 语句中使用 continue 在 php 7.3 的 switch 中使用 continue 会出现警告.1 2 3 while ($foo) { switch ...
- java中sql语句能不能加分号的问题?
一.原因 在程序运行中,当执行sql后总是报无效字符错误:但是把程序放在pl/sql中执行又没有错误.让我很纳闷!于是我开始查找资料,然后我终于发现了问题. 二.问题剖析 原来在程序中:如果你在程序 ...
- [转帖]关于Java中SQL语句的拼接规则
关于Java中SQL语句的拼接规则 自学demo 的时候遇到的问题 结果应该是 '"+e.getName()+"' 注意 一共有三组标点符号 (除去 方法函数后面的括号) 实现目标 ...
- Java中数字的格式化输出
Java中数字的格式化输出 double d = 345.678; String s = "hello!"; int i = 1234; //"%"表示进行格式 ...
- java中switch、while、do...while、for
一.Java条件语句之 switch 当需要对选项进行等值判断时,使用 switch 语句更加简洁明了.例如:根据考试的名次,给予前 4 名不同的奖品.第一名,奖励笔记本一台:第二名,奖励 IPAD ...
- java基础:switch语句应用,循环的详细介绍以及使用,附练习案列
1. switch语句 1.1 分支语句switch语句 格式 switch (表达式) { case 1: 语句体1; break; case 2: 语句体2; break; ... default ...
随机推荐
- [k8s] k8s基于csi使用rbd存储
描述 ceph-csi扩展各种存储类型的卷的管理能力,实现第三方存储ceph的各种操作能力与k8s存储系统的结合.通过 ceph-csi 使用 ceph rbd块设备,它动态地提供rbd以支持 Kub ...
- 面试官:Redis中哈希数据类型的内部实现方式是什么?
面试官:Redis中基本的数据类型有哪些? 我:Redis的基本数据类型有:字符串(string).哈希(hash).列表(list).集合(set).有序集合(zset). 面试官:哈希数据类型的内 ...
- laravel 终端命令
创建模块及控制器
- egg-jwt的使用
安装 npm install egg-jwt --save 配置 // config/config.default.js config.jwt = { secret: 'zidingyi', // 自 ...
- CF1534F1题解
首先,对于一个在第 \(i\) 行 \(j\) 列的沙子,如果他开始下降,他能够使哪些沙子下降呢? 很容易得知是第 \(j-1,j,j+1\) 列所有行号不小于 \(i\) 的沙子. 对于沙子 \(u ...
- 盘点十大GIS相关算法
1.道格拉斯-普克算法(Douglas–Peucker) 道格拉斯-普克算法(Douglas–Peucker algorithm,亦称为拉默-道格拉斯-普克算法.迭代适应点算法.分裂与合并算法)是将曲 ...
- jdbc创建数据库的连接
package com.gylhaut.db; import java.sql.Connection;import java.sql.DriverManager;import java.sql.Res ...
- [源码解析] TensorFlow 分布式环境(4) --- WorkerCache
[源码解析] TensorFlow 分布式环境(4) --- WorkerCache 目录 [源码解析] TensorFlow 分布式环境(4) --- WorkerCache 1. WorkerCa ...
- python发送邮件之宝藏库yagmail
之前使用email模块+smtplib模块发送邮件,虽然可以实现功能,但过程比较繁琐,今天发现一个宝藏库(yagmail),可以说是炒鸡好用啦!!! 贴上实现代码,大家细品 yagmail安装 pip ...
- [SPDK/NVMe存储技术分析]001 - SPDK/NVMe概述
1. NVMe概述 NVMe是一个针对基于PCIe的固态硬盘的高性能的.可扩展的主机控制器接口. NVMe的显著特征是提供多个队列来处理I/O命令.单个NVMe设备支持多达64K个I/O 队列,每个I ...