温馨提示×

温馨提示×

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

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

java switch开关怎么写规范

发布时间:2026-10-06 14:13:58 来源:亿速云 阅读:92 作者:小樊 栏目:编程语言

在 Java 中,switch 的写法随着版本演进有多种规范写法,下面按推荐程度 + 版本给你整理一份清晰规范。


一、Java 17+(最推荐,现代写法)

✅ 使用 switch 表达式(带 ->)

优点:简洁、不会穿透、必须有返回值或执行语句

String type = "A";

String result = switch (type) {
    case "A" -> "类型A";
    case "B" -> "类型B";
    case "C" -> "类型C";
    default -> "未知类型";
};

System.out.println(result);

✅ 规范要点:

  • 使用 -> 而不是 : + break
  • 所有分支必须覆盖(或写 default)
  • 表达式必须返回一个值

二、Java 12–16(过渡写法)

int score = 90;

String level = switch (score / 10) {
    case 10, 9 -> "优秀";
    case 8 -> "良好";
    case 7 -> "中等";
    default -> "不及格";
};

✅ 支持:

  • 多值匹配 case 10, 9
  • 箭头语法

三、传统写法(Java 7–11,仍可用但不推荐)

int day = 3;
String dayName;

switch (day) {
    case 1:
        dayName = "周一";
        break;
    case 2:
        dayName = "周二";
        break;
    case 3:
        dayName = "周三";
        break;
    default:
        dayName = "未知";
}

⚠️ 注意事项(规范):

  • 必须有 break,否则会穿透
  • default 建议永远写上
  • 变量在使用前必须赋值

四、switch 支持的参数类型(规范)

✅ Java 支持:

  • byte / short / char / int
  • enum
  • String(Java 7+)
  • 不支持 long、float、double、boolean
enum Color { RED, GREEN, BLUE }

switch (color) {
    case RED -> System.out.println("红");
    case GREEN -> System.out.println("绿");
    case BLUE -> System.out.println("蓝");
}

五、企业级规范建议(非常重要)

✅ 推荐

  • 优先使用 switch 表达式
  • 使用 -> 避免 break
  • 明确写 default
  • 分支少(≤3)可用 if,多则用 switch

❌ 不推荐

  • 忘记 break 导致穿透
  • 在 switch 里写大量业务逻辑
  • 使用魔法值(建议用 enum)

六、常见错误示例

switch (x) {
    case 1:
        System.out.println("1");
    case 2:
        System.out.println("2"); // 会穿透
}

如果你愿意,可以告诉我:

  • 你用的 Java 版本
  • 是 业务判断 / 状态机 / 枚举处理

我可以直接给你最合适、最规范的写法模板。

向AI问一下细节

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

AI
助
手