写在前面:本人是借助两本参考书自学的,其中部分例子和语句均是来自参考书。第一本:《Java 编程指南》,[美] Budi Kurniawan 著,闫斌 贺莲 译。第二本:《第一行代码 Java 视频讲解版》,李兴华 马云涛 著


第四篇中写了 if 语句块,但在 if 语句块中,它判断语句里的条件只能是返回值为boolean数据类型的表达式,当需要判断其他类型的数据时不便于使用 if 语句块,这时就可以采用 switch 语句。


switch 语句
switch  ( expression )  {
case data1  :statement1(s);break;
case  data2  :statement2(s);break;
……
case  data n  :statement n(s);break;
default:statement(s)
}

switch 语句中 expression 必须是返回值为 int 、string、枚举值的表达式,data也是对应的数据就可以了。当expression符合某一个case的data,则执行该case语句,其中break语句起不可少。

=============================================

ps:从JDK1.7开始,switch语句支持String(字符串)的直接判断,但我的JDK1.8进行String判断是会出错,我浏览了两个博客,一个说有问题,一个说没有问题(若有问题可以通过枚举enum解决),故先利用int做例子,String类型等实验出来后单独介绍。(两篇博客链接:第一篇,第二篇)

=============================================
例子(来自个人文件firstesten,java)

public class firstesten {public static void main(String[] args)  {int x = 2;switch  ( x )  {case  1  :System.out.println("该同学在1班");break;case  2  :System.out.println("该同学在2班");break;case  3  :System.out.println("该同学在3班");break;default :System.out.println("未查询到该同学班级");}int y = 6;switch  ( y )  {case  1  :System.out.println("该同学在1班");break;case  2  :System.out.println("该同学在2班");break;case  3  :System.out.println("该同学在3班");break;default :System.out.println("未查询到该同学班级");}}
}

输出结果为:

该同学在2班
未查询到该同学班级

break:
break是为了结束当前语句的执行,如果不加break,则switch语句在遇到满足的case后会继续向下执行,剩余的case不再进行判断而被自动判定满足条件,直到遇到break或者switch语句结束。例如:

public class firstesten {public class firstesten {public static void main(String[] args)  {int x = 3;switch  ( x )  {case  1  :System.out.println("该同学在1班");break;    // 有breakcase  2  :System.out.println("该同学在2班");  //  无break,但case不满足条件,故不执行输出case  3  :System.out.println("该同学在3班");  // case满足条件,无break,故以下case自动满足条件case  4  :System.out.println("该同学在4班");  //  上一个case无break,故当前case虽然不满足条件依然可以执行输出语句case  5  :System.out.println("该同学在5班");  //  上一个case无break,故当前case虽然不满足条件依然可以执行输出语句break;                                         //  遇到break,结束switch语句default :System.out.println("未查询到该同学班级");  }}
}

输出结果为:

该同学在3班
该同学在4班
该同学在5班

Java学习篇五——分支(选择)结构之switch语句及其中的break作用相关推荐

  1. Java学习篇四——分支(选择)结构之 if 语句块

    写在前面:本人是借助两本参考书自学的,其中部分例子和语句均是来自参考书.第一本:<Java 编程指南>,[美] Budi Kurniawan 著,闫斌 贺莲 译.第二本:<第一行代码 ...

  2. java中if结构用图表示_Java语法基础之选择结构的if语句、switch语句详解

    [前言] 流程控制语句: 在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的.也就是说程序的流程对运行结果有直接的影响.所以,我们必须清楚每条语句的执行流程.而且,很多时候我们要通过 ...

  3. invader的java学习第五天基础篇

    invader的java学习第五天基础篇(持续更新中-) 一.位运算符 ^.&.|.~.>>.<<.>>>,位运算符就是基于二进制直接进行运算(0为f ...

  4. c语言switch同时比较多个变量,C语言学习if和switch分支选择结构

    如何判断一个整数是否为正数 计算机同我们一样,也是可以判断大小.在此之前,我们需要先说明在计算机中用来判断两个数关系的符号,即关系运算符. 关系运算符号 c语言中的关系运算符与数学上学习的有什么不同? ...

  5. Python 3.10新增软关键字实现真正意义上的多分支选择结构

    推荐教材: <Python程序设计基础与应用(第2版)>(微课版)(ISBN:978-7-111-69670-4),机械工业出版社,2022年1月出版.面向新工科高等院校大数据专业系列教材 ...

  6. Java学习记录五(多线程、网络编程、Lambda表达式和接口组成更新)

    Java学习记录五(多线程.网络编程.Lambda表达式和接口组成更新) Java 25.多线程 25.1实现多线程 25.1.1进程 25.1.2线程 25.1.3多线程的实现 25.1.4设置和获 ...

  7. C语言 第五章 选择结构 答案,c语言第五章 选择结构程序设计(习题册答案).doc

    第五章 选择结构程序设计 基础练习(A) 一.填空题 1.关系表达式的运算结果是 逻辑 值.C语言没有逻辑型数据,以 1 代表"真",以 0代表"假". 2.逻 ...

  8. java switch嵌套if_(新手)Java课程作业,请各位老哥指教:综合运用嵌套if选择结构、switch选择结构、多重if选择结构实现商品换购功能...

    综合运用嵌套if选择结构.switch选择结构.多重if选择结构实现商品换购功能 下面是我自己的代码,功能虽然基本满足,但是感觉好臃肿,很不简洁,有更好的方法吗?import java.util.Sc ...

  9. 微课|中学生可以这样学Python(3.1节):单分支选择结构

    适用教材: 董付国,应根球.<中学生可以这样学Python>.清华大学出版社,2017. 第3章  选择结构 3.1  单分支选择结构 京东购买链接:https://item.jd.com ...

最新文章

  1. Java程序猿笔记——基于redis分布式锁实现“秒杀”
  2. hibernate的中文问题的解决方案
  3. 关于阻塞I/O 非阻塞I/O 同步I/O 异步I/O epoll select的学习
  4. 奇迹暖暖服务器不稳定,闪耀暖暖用土豆当服务器?开服仅半小时就崩溃,无数玩家疯狂吐槽...
  5. tbase同步mysql_mysql主从同步
  6. python匿名函数里用for_请问这段Python代码如何用匿名函数简化?
  7. 多线程某个线程异常了怎么处理_技术分享|Java多线程之高并发处理
  8. 一步步实现SDDC-vSphere Auto Deploy的妙用
  9. python实验报告_20193102 实验一 《python程序设计》实验报告
  10. java stax_XMLStreamWriter Java StAX
  11. linux centos 光盘修复,CentOS的lib库误操作和修复
  12. 五十岁才考上大学的柳永,半生风流半生坎坷!
  13. python绘制隐含波动率曲面_如何用python计算隐含波动率
  14. Json数据格式解析,难点,易错点分析
  15. win7远程服务器管理工具
  16. 网站关键词排行优化技巧
  17. python--查看微信好友是否删除自己
  18. Hi3516开发笔记(十一):通过HiTools使用网口将uboot、kernel、roofts烧写进eMMC
  19. mr编程实现手机流量统计和读取MySQL数据
  20. 数据结构c语言版二叉树的顺序存储表示,数据结构(十一) -- C语言版 -- 树 - 二叉树基本概念...

热门文章

  1. 2019-5-17:我的大学和我的ACM
  2. 微信小程序开发笔记—设置页面密码
  3. Java学习day019
  4. 你也可以做一个简易抽奖程序!
  5. 亿道信息丨手持PDA丨三防手持机丨手持终端丨助力仓储高效管理
  6. Godot3游戏引擎入门之十四:RigidBody2D刚体节点的应用以及简单的FSM状态机介绍
  7. 像悲观主义者一样储蓄,像乐观主义者一样投资
  8. aardio 谷歌浏览器自动化 (一) 浏览器初始化
  9. 延长SSD寿命——Trim指令的作用及其原理的探索
  10. jquery获取和设置html title标签值