Java中switch的详细使用
一、前言
本人也做开发好几年了,Switch用的都是case匹配后直接break,今天才发现,如果当前case不break,那么将会执行所有case里的代码(不管case批不匹配)。
二、Switch介绍
1.switch中的表达式的数据的数据类型为byte,short,int,char,String(jdk>1.7支持String类型)
2.default可以放在任意一行,但是不管放在那一行,都会先找第一个case去匹配,如果所有的case都不匹配,才会执行default,default可以省略不写,建议写上。
3.break可以不写,就容易造成switch的穿透现象,如果匹配过一次或者执行过default之后,都不会再进行二次匹配了,但是语句体内容该执行还是会执行
三、Switch的穿透
int state =2;switch (state) {case 1:System.out.println("1");case 2:System.out.println("2");case 3:System.out.println("3");default:System.out.println("4");break;}
如上代码,输出结果为:2,3,4;即使state不为3和4,因为2中匹配后没有break,则后续代码则不会进行case判断,直到遇到break为止。
Java中switch的详细使用相关推荐
- Java中switch都可以支持哪些数据类型
Java中switch都可以支持哪些数据类型 在JDK1.5之前,switch循环只支持byte short char int四种数据类型. JDK1.5 在switch循环中增加了枚举类与byte ...
- 品味性能之道十一:JAVA中switch和if性能比较
通常而言大家普遍的认知里switch case的效率高于if else.根据我的理解而言switch的查找类似于二叉树,if则是线性查找.按照此逻辑推理对于对比条件数目大于3时switch更优,并且对 ...
- Java中的enum详细解析------Java 语言中 Enum 类型的使用介绍
Enum 类型的介绍 枚举类型(Enumerated Type) 很早就出现在编程语言中,它被用来将一组类似的值包含到一种类型当中.而这种枚举类型的名称则会被定义成独一无二的类型描述符,在这一点上和常 ...
- Java 中 switch 的用法
Java 中 switch 的用法 1.switch 中的表达式的数据的数据类型为 byte, short, int, char, String(jdk > 1.7支持 String 类型) 2 ...
- java中switch用法举例范围_Java中Switch用法代码示例
一.java当中的switch与C#相比有以下区别 注:在java中switch后的表达式的类型只能为以下几种:byte.short.char.int(在Java1.6中是这样), 在java1.7后 ...
- 关于Java中Switch支持的数据类型
Java中Switch支持byte.short.char.int四种基本类型,在JDK1.5中支持了枚举类型以及byte.short.char.int四种基本数据类型的包装类,在JDK1.7中支持了S ...
- java中switch条件_关于java:你能在Android的switch-case中使用条件语句吗?
在我的寻找中,我似乎找不到一个直截了当的肯定或否定.在android中,有没有一种在case switch中使用条件语句的方法?例如,年龄是一个int值: switch (age){ case (&g ...
- Java中switch对整型/字符型/字符串型具体实现细节
转自:http://www.hollischuang.com/archives/61 Java7中switch中支持的数据类型有: byte short int char String类型 其实swi ...
- 面试题解析:1 Java中switch语句可以作用在enum上的测试
enum是java中的枚举,其实枚举是一个常量,枚举就是定义枚举类的一个实例. 定义枚举的时候,应该注意一下几个问题: 其构造方法应该是private 的,为什么呢?根据我的理解,应为枚举是个常量,枚 ...
最新文章
- halcon:(4)halcon中XLD的概念与应用----汽车引擎盖圆孔检测
- DeeCamp 2020 赛题大公开!快来看你想选哪个
- 根据传入url请求,返回json字符串
- Linux 磁盘坏道检测和修复
- Java并发-UncaughtExceptionHandler捕获线程异常信息并重新启动线程
- 撬开骁龙8一看,满满都是顶会论文
- 02-JDBC连接MySQL数据库【查询数据】
- [转] Windows 下校验 Fedora 安装文件
- jfinal文件上传
- mysql两种引擎的适用场景_MySQL两种引擎的区别和应用场景
- 前端学习(3163):react-hello-react之组件化编码
- memcpy,strcpy,strncpy
- 2016全球可再生能源投资额为2416亿美元
- 字节跳动的首款获批游戏曝光 原来是这个
- LeetCode题目总结-滑窗法
- MapReduce:详解Shuffle过程
- public 函数_C++:11友元函数、友元类
- 开源项目之Windows读取Ext4分区的工具 Ext2Read
- 第三届泰迪杯全国大学生数据挖掘竞赛通知
- git输入 ssh-keygen -t rsa 后只显示Generating public/private rsa key pair. 然后就直接跳出了
热门文章
- 【电子学会】2022年09月图形化一级 -- 踢足球
- 邮件数据泄露,机构单位应如何应对
- ​龙迅股份在科创板上市:募资约11亿元,赛富、深创投为股东​
- Userinit.exe
- 用ISO-8859-1解决Python ‘utf-8‘ codec can‘t decode bytes in position 924-925问题
- 2021-2027年中国手机玻璃行业市场研究及前瞻分析报告
- 考研英语长难句(刘晓燕)笔记 第四课 绝对的考研命穴——定语和定语从句
- 采草药C语言,进深山、识百草、采草药 ————医路向前团队采集中草药
- win7插着网线开机卡死,拔下网线开机正常
- 解决无法使用gpt的问题