java中的结构--switch选择结构
if-switch 选择结构
switch结构可以更好的解决等值判断问题
switch 选择结构的语法:
switch (表达式){
case 常量 1:
//代码块1;
break;
case 常量 2:
//代码块2;
break;
。。。。。。
default:
//代码块n;
break;
}
解释:
1.switch: 表示“开关”,这个开关就是switch后面小括号里的值,
小括号里要放一个整形变量(表达式)或字符类型(表达式)。
2.case: 表示“情况。情形”,case必须是一个整型或字符型的常量,
通常是一个固定的字符,数字,如"8"."a"。case块可以有多个,
顺序可以改变,但是每个case后面常量的值必须各不相同。
3.default: 表示"默认",即其他情况都不满足。default后要紧跟冒号。
default块和下case块的先后顺序可以变动,不会影响程序执行的结果。
通常,default块放在末尾,也可以省略。
4.break 表示是“停止”,即跳出当前结构。
switch选择结构的执行过程:
先计算并获得switch后面小括号里的表达式或变量的值,然后
将计算结果顺序与每个case后的常量比较,当第二者相等时,执行这个case块中的代码;
当遇到break是,就跳出switch选择结构,执行switch选择结构之后的代码。
如果没有任何一个case后的常量与switch后的小括号中的值相等,则执行
switch末尾部分的default块中的代码。
注意:
1.每个case后的代码块可以有多个语句,即可以有一组语句,而且不需要用“{}”括起来。
case和default后都有一个冒号,不能漏写;否则编译不通过。对于每个case的结尾,
都要想一想是否需要从这里跳出整个switch结构。如果需要,不要忘记写"break";。
2.在case后面的代码块中当变量day的值为1 2 3 时,都将输出“奇数!”;
当变量day的值为2 4 6时,都将输出“偶数!”
eg:
int num=3;
switch(num){
case 1:
case 3:
case 5:
System.out.println("奇数!");
break;
case 2:
case 4:
case 6:
System.out.println("偶数!")
break;
}
多重if和switch选择结构很相似,它们都是用来处理多分支条件的结构,
但是switch选择结构只能用于等值条件判断的情况。
在JDK 1.6之前的版本中,switch选择结构的条件必须是整型变量或字符型变量,
但在JDK 1.7中,switch选择结构的条件中也可以使用String类型。
在程序开发过程中,需要考虑使程序具有较高的容错性。
》》》》》》》》》》》》》》》》》》》》》》》》》》(更多内容请见下回分解!)
最新文章
- [LintCode] Move Zeroes 移动零
- Android 反编译 代码注入之HelloWorld
- Hessian
- Day16 DOM &;jQuery
- 值得赞扬的尝试与进步——CSDN开源夏令营第一印象
- 关于Mysql的索引
- windows 安装xadmin
- chmod、acl权限
- 查看电脑保存的wifi密码
- 20170811 JQuery基础知识学习记录(一)
- OpenShift nfs 持久化
- Rpgmakermv(14)Archeia_Steamworks
- python正则表达式03--字符串中匹配数字
- python之微信公众号开发(基本配置和校验)
- mysql 并发测试
- struts2中 jsp:forward 失败原因及解决办法
- <; 转载 >; 说说JSON和JSONP
- iOS提交到appstore的新要求
- Unity 为什么有时候播放音乐(音效)会没有声音
- Thinkphp 取消Url默认模块的现实
热门文章
- C语言基础--数据
- HDU 4451 容斥原理
- noip模拟赛 三角形
- MyBatis与Spring MVC结合时,使用DAO注入出现:Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: Property &#39;sqlSessionFactory&#39; or &#39;sqlSessionTemplate&#39; are required
- 如何基于udp实现tcp协议栈
- 常见的各品牌路由器默认IP地址汇总清单
- IOS开发之block应用
- 完美解决EditText和ScrollView的滚动冲突(上)
- Redux 源码解读--createStore,js
- idea2016的使用心得 --- 太棒了