Java自学习day4.2-分支语句2:witch-case结构
1.格式
switch(表达式){
case 常量1:
执行语句1;
//break;
case 常量2:
执行语句2;
//break;
…
default:
执行语句n;
//break;
}
说明:
① 根据switch表达式中的值,依次匹配各个case中的常量。一旦匹配成功,则进入相应case结构中,调用其执行语句。
当调用完执行语句以后,则仍然继续向下执行其他case结构中的执行语句,直到遇到break关键字或此switch-case结构
末尾结束为止。
② break,可以使用在switch-case结构中,表示一旦执行到此关键字,就跳出switch-case结构
③ switch结构中的表达式,只能是如下的6种数据类型之一:
byte 、short、char、int、枚举类型(JDK5.0新增)、String类型(JDK7.0新增)
④ case 之后只能声明常量。不能声明范围。
⑤ break关键字是可选的。
⑥ default:相当于if-else结构中的else.
default结构是可选的,而且位置是灵活的。
2.应用举例
class SwitchCaseTest {public static void main(String[] args) {int number = 5;switch(number){case 0:System.out.println("zero");break;case 1:System.out.println("one");break;case 2:System.out.println("two");break;case 3:System.out.println("three");break;default:System.out.println("other");//break;}String season = "summer";switch (season) {case "spring":System.out.println("春暖花开");break;case "summer":System.out.println("夏日炎炎");break;case "autumn":System.out.println("秋高气爽");break;case "winter":System.out.println("冬雪皑皑");break;default:System.out.println("季节输入有误");break;}//**************如下的两种情况都编译不通过*********************//情况一/*boolean isHandsome = true;switch(isHandsome){case true:System.out.println("我好帅啊~~~");break;case false:System.out.println("我好丑啊~~~");break;default:System.out.println("输入有误~~~");}*///情况二/*int age = 10;switch(age){case age > 18:System.out.println("成年了");break;default:System.out.println("未成年");}*/}
}
3.练习
1.使用 switch 把小写类型的 char型转为大写。只转换 a, b, c, d, e. 其它的输
出 “other”。
import java.util.Scanner;class Test {public static void main(String[] args) {Scanner scan = new Scanner(System.in);String word = scan.next();char c = word.charAt(0);switch(c){case 'a':System.out.println("A");break;case 'b':System.out.println("B");break;case 'c':System.out.println("C");break;case 'd':System.out.println("d");break;default :System.out.println("Other");}}
}
2.对学生成绩大于60分的,输出“合格”。低于60分的,输出“不合格”。
class SwitchCaseTest1 {public static void main(String[] args) {/*int score = 78;switch(score){case 0:case 1:case 2:...case 100:}*//*int score = 78;if(score >= 60){}else{}*/int score = 78;switch(score / 10){case 0:case 1:case 2:case 3:case 4:case 5:System.out.println("不及格");break;case 6:case 7:case 8:case 9:case 10:System.out.println("及格");break;}//更优的解决方案:switch(score / 60){case 0:System.out.println("不及格");break;case 1:System.out.println("及格");break;}}
}
3.从键盘分别输入年、月、日,判断这一天是当年的第几天
注:判断一年是否是闰年的标准:
1)可以被4整除,但不可被100整除
或
2)可以被400整除
说明:
- 凡是可以使用switch-case的结构,都可以转换为if-else。反之,不成立。
- 我们写分支结构时,当发现既可以使用switch-case,(同时,switch中表达式的取值情况不太多),
又可以使用if-else时,我们优先选择使用switch-case。原因:switch-case执行效率稍高。
import java.util.Scanner;
class SwitchCaseExer {public static void main(String[] args) {Scanner scan = new Scanner(System.in);System.out.println("请输入year:");int year = scan.nextInt();System.out.println("请输入month:");int month = scan.nextInt();System.out.println("请输入day:");int day = scan.nextInt();//定义一个变量来保存总天数int sumDays = 0;switch(month){case 12:sumDays += 30;case 11:sumDays += 31;case 10:sumDays += 30;case 9:sumDays += 31;case 8:sumDays += 31;case 7:sumDays += 30;case 6:sumDays += 31;case 5:sumDays += 30;case 4:sumDays += 31;case 3://sumDays += 28;//判断year是否是闰年if((year % 4 == 0 && year % 100 != 0 ) || year % 400 == 0){sumDays += 29;}else{sumDays += 28;}case 2:sumDays += 31;case 1:sumDays += day;}System.out.println(year + "年" + month + "月" + day + "日是当年的第" + sumDays + "天");}
}
Java自学习day4.2-分支语句2:witch-case结构相关推荐
- Java中的switch分支语句
一.switch简介和语法 switch语句用于多分支选择,由一个控制表达式和多个case标签组成.switch语句后面的控制表达式的数据类型只能是byte.short.char.int.String ...
- JAVA入门学习(分支语句)
目录 前言 一.if分支语句 二.switch分支语句 前言 Java中在某些情况下,需要当某一条件满足时才执行相应代码,条件不满足则执行其他代码,这时就要采用分支语句来进行判断. 分支语句主要是用i ...
- Java系列教程day05——分支语句
day05--分支语句 提纲: 1.程序的流程结构 2.选择结构 3.if语句 4.switch-case语句 5.作业 一.程序的流程结构 程序的流程结构 程序的流程结构: A:顺序结构:默认的,从 ...
- java中switch多分支语句_java switch确多分支选择语句的用法
switch语句是多分支选择语句.常用来根据表达式的值选择要执行的语句 switch (expression) { case value_1 : statement (s); break; case ...
- 语句:分支语句、switch case ——7月22日
语句的类型包括:声明语句.表达式语句.选择语句.循环语句.跳转语句.异常语句 1.声明语句引:入新的变量或常量. 变量声明可以选择为变量赋值. 在常量声明中必须赋值. 例如: int i = 0;// ...
- 重学JavaSE 第4章 : 顺序结构、分支语句、循环结构、break, continue, return区别
文章目录 一. 程序流程控概述 二. 顺序结构 三.分支语句 2.1.分支语句1:if-else结构 2.1.1.输入语句 2.2. 分支语句2:switch-case结构 四.循环结构 4.1.fo ...
- 【C语言知识梳理之分支语句】
C语言的三种基本结构 C语言是结构化的程序设计语言:分为三种基本结构 顺序结构,选择结构,循环结构. 顺序结构 顺序结构就是从开到到结尾,依次往下. 选择结构 分支语句 if switch 循环结构 ...
- python分支语句
分支语句 能够使用if结构完成单一分支语句的书写 能够使用if-else-结构完成对立分支语句的书写 能够使用if-elif-else-结构完成多情况分支语句的书写 能够完成减肥计划的案例 比较运算符 ...
- 流程控制——分支语句
if分支语句 if 概述:在某些情况下,需要当某一条件满足时才执行相应代码,条件不满足则执行其他代码. if 四种形式:单分支.双分支.多分支.嵌套if 单分支 if (布尔表达式) { //布尔表达 ...
最新文章
- js获取asp.net服务器端控件Label,TextBox,RadioButtonList,DropDownList的值
- tcp/ip 协议栈Linux源码分析四 IPv4分片 ip_fragment函数分析
- jbl css-h15,JBL CSS8006BM 天花音箱
- 【JavaScript】检测数据类型函数
- mac/unix系统:C++实现一个端口扫描器
- [实战]Router configuration for TP ROOM
- 硬核数据研究:年轻人为什么这么喜欢“哈哈哈哈”?
- ajax 将整个表单提交到后台处理
- Oracle P6培训系列:16为作业分配资源的预算数量
- 怎样设置有道词典屏幕取词后自动翻译?
- Excel可视化:1个思路学会7种变形柱形图
- c语言的条件运算符,条件运算符c语言
- win10卸载软件_win10系统频繁闪屏刷新解决方法
- 抖音一个老人和一个机器人歌曲_抖音一禅小和尚背景音乐汇总 全网最火bgm都在这...
- Redis 集群规范(中文稿)(MOVED错误码及ASK错误码
- 北航2021届计组 - 支持中断的CPU
- OPPO Find7 system分区教程
- 【财富空间】中兴陷入危局之际,半导体巨人三星却赚翻了!核心技术才是王道...
- Linux安装expect
- C语言snmp编程视频,使用net-snmp API编程_C语言教程_C++教程_C语言培训_C++教程培训_C/C++频道_中国IT实验室...
热门文章
- js 绝对等于 的各种情况 需要进行绝对等于比较的方法
- update导致死锁
- props传递对象_props传递数据
- 精美UI强大娱乐功能组合微信小程序源码下载,安装简单
- QT,SSH开发——QSSH库编译成功率最高的方法
- 哀悼日结束了,心情还是很沉重的!
- 基于java汽车售后服务管理系统计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署
- c++中用opengl的gl函数在三维空间中绘制圆形和画球体
- spring boot:从零开始搭建一个项目 - day 4 控制台输出日志美化 + swagger2
- linux centos进行系统盘扩容