JDK23支持switch传入long类型

前言

在JDK23以前版本,不支持使用Long或者long类型传入,但是JDK23支持该类型了,但是只是预览属性

switch使用

在JDK23以往版本中,switch这么写,会报错

csharp 复制代码
public class Test {

    public static void main(String[] args) {
        Long a = 1L;
        switch (a) {
            case 1L:
                System.out.println(1);
                break;
            case 2L:
                System.out.println(2);
                break;
        }
    }
}

会报

但是JDK23版本支持long类型了

csharp 复制代码
public class LongDemo {

    public static void main(String[] args) {
        long a = 1L;
        switch (a) {
            case 1L -> System.out.println(1);
            case 2L -> System.out.println(2);
            default -> System.out.println(3);

        }
    }
}

输出

备注该功能必须开启预览属性

总结

JDK23中,JEP 455 的预览特性中,switch 全面支持所有原始类型,包括 byte, short, char, int, long, float, double, boolean

相关推荐
a努力。1 分钟前
Context-State-Memory三重信息架构揭秘
java·服务器·前端
lizhongxuan4 分钟前
让 AI 提效转化为团队交付
后端
颜进强22 分钟前
23 · NestJs ModuleRef 模块引用:容器递给你的"取货窗口",四个 API 四种语义
前端·后端·ai编程
captain37625 分钟前
Maven
java·后端·idea
hsfxuebao25 分钟前
Loop Engineering 已死? 一文带你了解Graph Engineering
人工智能·后端
liangshanbo12151 小时前
主系统登录后,子系统怎么实现自动登录?
java·网络·数据库
颜进强1 小时前
22 · NestJs InjectionScopes 注入作用域:默认单例不是偷懒,是最优——以及何时才该打破
前端·后端·ai编程
ShineWinsu1 小时前
对于Redis:缓存的解析
java·redis·缓存·缓存穿透·缓存击穿·缓存雪崩·缓存预热
rannn_1111 小时前
【Java面试题】高频面试题1|Java 后端、MySQL、Redis 与 RAG 面试整理
java·jvm·数据库·后端·面试
写后端的胖头鱼1 小时前
一文详解Spring 事务失效场景
java·spring·事务·transactional·事务传播机制