千家信息网

从零开始学大数据-Java基础-switch语句(6)

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,我们从零开始学习大数据技术,从java基础,到Linux技术涉猎,再深入到大数据技术的Hadoop、Spark、Storm技术,最后到大数据企业平台的搭建,层层递进,由点到面!希望技术大牛能过来指导学
千家信息网最后更新 2026年11月01日从零开始学大数据-Java基础-switch语句(6)


我们从零开始学习大数据技术,从java基础,到Linux技术涉猎,再深入到大数据技术的Hadoop、Spark、Storm技术,最后到大数据企业平台的搭建,层层递进,由点到面!希望技术大牛能过来指导学习。


上一节学习了流程控制语句,本节学习switch语句。

开始之前,我们先看一下上节的练习题。


一、练习题

if语句格式的练习:

1、获取两个数据中较大的值

2、判断一个数据是奇数还是偶数,并输出

程序执行结果如下:



二、switch语句


流程控制语句的选择结构

1
选择结构(也被称为分支结构)

选择结构有两种语句,分别为如下:

  • if 语句

  • switch语句

前面已经对if语句做了探讨,本节往下一起了解下switch语句


switch语句


switch语句格式:

switch(表达式){

case 值1:

语句体1;

break;

case 值2:

语句体2;

break;

...

default;

语句体n+1;

break;

}

格式的解释:

  • switch:表示这是switch选择结构

  • 表达式:这个地方的取值有限定的

byte,short,int,char

JDK5以后可以是枚举

JDK7以后可以是字符串

  • case:后面跟的是要和表达式进行比较的值

  • 语句体:要执行的代码

  • break:表示中断和结束的意思,可以控制switch语句的结束

  • default:当所有的值和表达式不匹配的时候,就执行default控制的语句,其实就相当于if语句的else


执行流程:

  1. 首先计算出表达式的值和case依次比较

  2. 一旦有对应的值,就执行相应的语句体

  3. 在执行的过程中,遇到break就会结束

  4. 最后,如果所有的case都和表达式的值不匹配,就会执行default中的语句体,程序结束





思考:

  1. byte可以作为switch的表达式吗?

  2. long可以作为switch的表达式吗?

  3. String可以作为switch的表达式吗?

实例:

键盘录入一个数据,根据这个数据,我们输出对应的星期

  • 键盘录入1,对应输出星期一

  • 键盘录入2,对应输出星期二

  • ...

  • 键盘录入7,对应输出星期日


实例分析:

1、键盘录入,用switch实现

2、判断我们可以使用if语句,也可以使用switch语句

程序代码:



程序执行结果:



switch语句的注意事项:


1、
case 后面只能是常量,不能是变量,而且,多个case后面的值不能出现相同的


2、
default可以省略吗?
  • 可以省略,但是不建议,因为它的作用是对不正确的情况给出的提示。

  • 特殊情况:case就可以把值固定的(单选项),可以考虑把default给省略

3、
break可以省略吗?
  • 可以省略,不会报错,但是最终执行结果不是我们想要的,会出现case穿透现象。

  • 不建议省略。


4、

default一定要在最后吗?
  • 不是,可以在任意位置,但是建议在最后,否则汇产生case穿透。


5、

switch语句的结束条件


  • 遇到break就结束


switch注意事项-实例


下面我们针对相关实例看下注意实现的效果。

1、举例(同名case ID & 变量ID)

程序执行结果:

  • 可见,case后面跟的必须是常量,不可以是变量,并且case后面的值不能相同。



2、举例(省略default语句)

程序执行结果:

  • 可见,在swith语句中,default是可以省略的,但是最终会导致一些不正确的情况不被排除在外,可以正常输入。虽然省略default不会有报错,但不建议省略掉。



3、举例(省略break)

程序执行结果:

  • 可见,在程序执行的时候,如果没有break进行程序中断,那么程序会依次按照顺序往下执行,直到遇到break才中止。虽然省略break不会有报错,但不建议省略掉,否则程序打印的结果会有误。



4、举例(default语句不放最后)

程序执行结果:

  • 可见,如果default不放在最后,程序本身不会报错,但是最终执行的时候,会出现case穿透。


5、举例:(switch语句结束条件)

程序执行结果:

  • 可见,在语句x,y中的,遇到了break就直接结束语句输出;

  • 在语句a,b中,没有遇到break,则程序执行到最后才做输出。


扩展练习题(自行完成):

1、随便出一个选择题,通过键盘录入,根据我们的选择来给出你的选择结果。

2、根据键盘录入的字符串,判断是否有满足要求的,如果有就输出否则,提示有误。


本节我们就先告一段落,下一节我们将学习循环结构语句


往期文章:


从零开始学大数据-Java基础开篇(1)

从零开始学大数据-Java基础语法(2)

从零开始学大数据-Java运算符(3)

从零开始学大数据-Java基础-三元运算符/键盘录入(4)

从零开始学大数据-Java基础-流程控制语句(5)




语句 程序 数据 结果 表达式 键盘 输出 选择 结构 基础 建议 技术 学习 控制 实例 星期 流程 变量 情况 时候 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 天津市摩尔互联网科技 广州淘业互联网络科技 金融科技 互联网金融 青岛互联网科技公司 上海致骋互联网科技 科技类的互联网平台 丰台科技园 互联网公司 福州新华互联网科技学校 知乎 昭通云南众福互联网科技有限公司 广西互联网科技孵化中心 朱啸虎曾投资哪些互联网科技企业 科技大学互联网 群盈汇互联网科技有限公司 每天都有哪些好的互联网科技 江苏苏星互联网科技有限公司 电子商务与互联网科技的关系 工业互联网科技成果转化 抖集互联网科技技术咨询 科技互联网行业投资研究 上海互联网科技园景观 成都互联网科技公司 融势互联网科技 万达互联网科技 金融科技和互联网金融 互联网还是高科技吗 语蝶互联网科技有限公司 九思连强互联网电子科技有限公司 互联网时代科技型公司的机会 互联网大会出现的黑科技 科技发展第三阶段互联网时代
0