温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

java Switch开关怎么用

发布时间:2026-07-25 16:14:15 来源:亿速云 阅读:95 作者:小樊 栏目:编程语言

在 Java 里,“Switch 开关”通常指的是 switch 语句,用来根据一个变量的值执行不同的代码分支。下面从基本用法 → 新特性 → 常见注意点给你讲清楚。


一、最基础的 switch 用法(传统写法)

示例:根据星期几输出内容

int day = 3;

switch (day) {
    case 1:
        System.out.println("星期一");
        break;
    case 2:
        System.out.println("星期二");
        break;
    case 3:
        System.out.println("星期三");
        break;
    default:
        System.out.println("未知日期");
}

执行规则

  • switch(变量):只能是 byte / short / char / int / enum / String
  • case:匹配值
  • break跳出 switch,否则会继续执行(贯穿)
  • default:相当于 else

二、⚠️ 没有 break 会怎样?(贯穿现象)

int num = 1;

switch (num) {
    case 1:
        System.out.println("1");
    case 2:
        System.out.println("2");
    case 3:
        System.out.println("3");
}

输出:

1
2
3

✅ 所以 一般都要加 break


三、Java 12+ 新写法(推荐 ✅)

1️⃣ switch 表达式(返回值)

int day = 3;

String result = switch (day) {
    case 1 -> "星期一";
    case 2 -> "星期二";
    case 3 -> "星期三";
    default -> "未知";
};

System.out.println(result);

✅ 优点:

  • 不用写 break
  • 可读性更好
  • 可以返回值

2️⃣ 多值匹配

int score = 90;

switch (score / 10) {
    case 10, 9 -> System.out.println("优秀");
    case 8, 7 -> System.out.println("良好");
    case 6 -> System.out.println("及格");
    default -> System.out.println("不及格");
}

四、switch 支持的类型

✅ Java 支持:

  • byte
  • short
  • char
  • int
  • enum(枚举)
  • String(Java 7+)

❌ 不支持:

  • long
  • float
  • double
  • boolean

五、switch 和 if 的区别

场景 推荐
判断固定值 switch
判断范围 if
逻辑复杂 if
// if 更适合范围判断
if (score >= 90) {
    System.out.println("优秀");
}

六、简单记忆口诀 ✅

switch 看值,case 匹配,break 跳出,default 兜底


如果你愿意,我也可以:

  • 枚举 + switch 给你写一个真实项目例子
  • 对比 switch 和 if 的性能
  • switch 在 Java 底层是怎么实现的

你现在是 学习阶段 还是 写项目遇到问题

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI