温馨提示×

温馨提示×

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

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

java switch开关可以返回吗

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

在 Java 里,switch 本身是一个语句(statement),不是表达式,但可以在 switch 中使用 return,也就是说:

✅ 可以 return 的情况

只要 switch 在一个方法(或 lambda)里,就可以在 case 中 return

public String getDay(int day) {
    switch (day) {
        case 1:
            return "Monday";
        case 2:
            return "Tuesday";
        default:
            return "Unknown";
    }
}

上面是完全合法的。


⚠️ 注意事项

  1. 必须保证所有可能路径都有返回值
public int test(int x) {
    switch (x) {
        case 1: return 1;
        // 编译错误:缺少 return 语句
    }
}
  1. return 会直接结束整个方法,不会执行 switch 后面的代码

✅ Java 14+:switch 表达式(可以“返回”值)

从 Java 14 开始,switch 可以是表达式,用 -> 或 yield:

String day = switch (n) {
    case 1 -> "Monday";
    case 2 -> "Tuesday";
    default -> "Unknown";
};

或:

String day = switch (n) {
    case 1:
        yield "Monday";
    default:
        yield "Unknown";
};

✅ 总结

  • ✅ switch 里可以 return
  • ✅ Java 14+ 可以用 switch 表达式返回值
  • ❌ switch 本身不是函数,不能直接“return 出来”

如果你说的是 “switch 能不能像函数一样直接返回结果”,我也可以按版本给你更具体的写法。

向AI问一下细节

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

AI
助
手