JDK23中的instanceof

前言

JDK23以前版本,instanceof关键字是不支持拓展基本类型,允许在所有模式上下文中使用原始类型,包括 longfloatdoubleboolean等,但目前是预览属性

instanceof使用

JDK23以前是这么使用的,要使用引用类型

typescript 复制代码
public class Instanceof1Demo {


    public static void main(String[] args) {
        Object data = 1;
        if (data instanceof Integer) {
            System.out.println(data);
        } else {
            System.out.println(2);
        }
    }
}

输出结果为

使用JDK23中的instanceof要先开启预览属性

typescript 复制代码
public class Instanceof1Demo {


    public static void main(String[] args) {
        Object data = 1;
        if (data instanceof int str) {
            System.out.println(str);
        } else {
            System.out.println(2);
        }
    }
}

输出结果为

总结

JDK23中,JEP 455 的预览特性中,instanceof 全面支持所有原始类型,包括 byte, short, char, int, long, float, double, boolean,但是属于预览属性,没有转正,使不使用就看个人选择

相关推荐
于先生吖2 分钟前
基于 Java 开发短剧系统:完整架构与核心功能实现
java·开发语言·架构
badhope4 分钟前
GitHub超有用项目推荐:skill仓库--用技能树打造AI超频引擎
java·开发语言·前端·人工智能·python·重构·github
一只鹿鹿鹿5 分钟前
网络安全风险评估报告如何写?(Word文件)
java·大数据·spring boot·安全·web安全·小程序
逆境不可逃6 分钟前
【后端新手谈 04】Spring 依赖注入所有方式 + 构造器注入成官方推荐的原因
java·开发语言·spring boot·后端·算法·spring·注入方式
Anastasiozzzz7 分钟前
深度解析 Java 单例模式
java·开发语言
NGC_66119 分钟前
G1收集器
java·开发语言·jvm
森林里的程序猿猿11 分钟前
垃圾收集器ParNew&CMS与底层标记三色标记算法
java·jvm·算法
老毛肚13 分钟前
八股框架篇
java·开发语言
毅炼14 分钟前
Spring 总结(1)
java·开发语言·spring
jing-ya20 分钟前
day 55 图论part7
java·数据结构·算法·图论