讲师中心 微信公众号

工具推荐

视频效率加速
updream

一键生成高质量推广成片

Seko
Seko

AI短剧一键生成成片

AniShort
AniShort

AI短剧协同制作平台

剧云
剧云

中文短剧剧本制作平台

如何在Java中使用switch语句

阿敏酱_3809

阿敏酱_3809

发布时间:2025-10-21 13:43:01

|

302人浏览过

|

来源于php中文网

原创

答案是Java中switch语句用于多分支选择,支持byte、short、int、char、对应包装类、enum和String(Java 7+),不支持long、float、double、boolean;基本语法为switch(表达式)匹配case值,break防止穿透,default处理默认情况;使用时需注意case值为常量、避免fall-through、default位置任意、表达式非null。

如何在java中使用switch语句

在Java中,switch语句是一种用于多分支选择的控制结构,适合替代多个if-else if语句,使代码更清晰、易读。它根据一个表达式的值匹配不同的情况(case),并执行对应代码块。

支持的数据类型

Java中的switch语句支持以下数据类型:

  • 基本类型:byte、short、int、char
  • 包装类型:Byte、Short、Integer、Character
  • 枚举类型(enum)
  • String 类型(从 Java 7 开始支持)
  • 表达式结果不能是 long、float、double 或 boolean

基本语法结构

switch语句的基本写法如下:

switch (表达式) {
  case 值1:
    语句块1;
    break;
  case 值2:
    语句块2;
    break;
  default:
    默认语句块;
}

说明:

立即学习“Java免费学习笔记(深入)”;

javascript-typescript-typescript-scaffold
javascript-typescript-typescript-scaffold

你是 TypeScript 项目架构专家,专注于脚手架搭建生产就绪的 Node.js 和前端应用。生成包含现代工具链(pnpm、Vite、Next.js)、类型

下载
  • 表达式的值会与每个case后的值进行比较
  • 一旦匹配,就执行对应case下的语句
  • break用于跳出整个switch,防止“穿透”到下一个case
  • default是可选的,当所有case都不匹配时执行

使用示例

以下是几个常见用法示例:

用int判断菜单选项:

int choice = 2;
switch (choice) {
  case 1:
    System.out.println("打开文件");
    break;
  case 2:
    System.out.println("保存文件");
    break;
  case 3:
    System.out.println("退出程序");
    break;
  default:
    System.out.println("无效选择");
}

用String判断用户命令(Java 7+):

String command = "start";
switch (command) {
  case "start":
    System.out.println("启动服务");
    break;
  case "stop":
    System.out.println("停止服务");
    break;
  default:
    System.out.println("未知命令");
}

使用枚举类型:

enum Day { MON, TUE, WED }
Day today = Day.WED;
switch (today) {
  case MON:
    System.out.println("星期一");
    break;
  case TUE:
    System.out.println("星期二");
    break;
  case WED:
    System.out.println("星期三");
    break;
}

注意事项

使用switch时需注意以下几点:

  • case值必须是常量或字面量,不能是变量或表达式
  • 多个case可以共享同一段代码(省略break)
  • 如果没有break,会继续执行后续case(fall-through),这有时是有意设计,但多数情况是错误
  • default可以出现在任何位置,不一定要放在最后
  • switch表达式不能为null,否则会抛出NullPointerException(尤其是String类型)
基本上就这些。掌握switch语句能让条件判断更简洁,特别是在处理固定选项时特别有用。

热门AI工具

更多
DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

立刻MV
立刻MV Hot

立刻MV是一款AI文本写作工具,AI 音乐视频(MV)创作工具。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

SkildArt
SkildArt Hot

SkildArt是一款AI文本写作工具,一站式 AI 视觉创作平台。

PixPix
PixPix Hot

PixPix是一款面向电商视觉生产的AI商品图生成工具。

小橡皮AI

一款AI工具,主要用于小橡皮一键去AI味,将机器味重的内容改得更有活人感,防止因为 AI 内容被平台打上 AI 标签,以及限流,适合需要提升相关任务效率的用户。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

Flowith
Flowith Hot

Flowith是一款基于画布和智能体工作流的 AI 协作工作空间。

音述AI
音述AI Hot

一款AI音频处理工具,主要用于音述AI是一个以“用声音述说故事”为核心的 AI 音乐创作与声音分享社区,适合需要提升相关任务效率的用户。

相关专题

更多
数据类型有哪几种
数据类型有哪几种

数据类型有整型、浮点型、字符型、字符串型、布尔型、数组、结构体和枚举等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

3511

2023.10.31

php数据类型
php数据类型

本专题整合了php数据类型相关内容,阅读专题下面的文章了解更多详细内容。

574

2025.10.31

c语言 数据类型
c语言 数据类型

本专题整合了c语言数据类型相关内容,阅读专题下面的文章了解更多详细内容。

582

2026.02.12

string转int
string转int

在编程中,我们经常会遇到需要将字符串(str)转换为整数(int)的情况。这可能是因为我们需要对字符串进行数值计算,或者需要将用户输入的字符串转换为整数进行处理。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

7459

2023.08.02

css中float用法
css中float用法

css中float属性允许元素脱离文档流并沿其父元素边缘排列,用于创建并排列、对齐文本图像、浮动菜单边栏和重叠元素。想了解更多float的相关内容,可以阅读本专题下面的文章。

7647

2024.04.28

C++中int、float和double的区别
C++中int、float和double的区别

本专题整合了c++中int和double的区别,阅读专题下面的文章了解更多详细内容。

904

2025.10.23

java中boolean的用法
java中boolean的用法

在Java中,boolean是一种基本数据类型,它只有两个可能的值:true和false。boolean类型经常用于条件测试,比如进行比较或者检查某个条件是否满足。想了解更多java中boolean的相关内容,可以阅读本专题下面的文章。

2150

2023.11.13

java boolean类型
java boolean类型

本专题整合了java中boolean类型相关教程,阅读专题下面的文章了解更多详细内容。

163

2025.11.30

Go-Zero API开发使用教程
Go-Zero API开发使用教程

本专题聚焦Go-Zero的API开发,拆解.api描述文件的语法结构、路由与分组定义、参数绑定与校验规则,说明统一响应体、JWT鉴权、跨域与接口文档生成的落地方式,并给出网关聚合与接口测试的实践建议。

0

2026.11.12

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
dev.java 官方:Learn Java
dev.java 官方:Learn Java

共0课时 | 0人学习

Java JDBC数据库连接官方教程
Java JDBC数据库连接官方教程

共0课时 | 0人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn