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,但是属于预览属性,没有转正,使不使用就看个人选择

相关推荐
风生u1 分钟前
activiti7 详解
java
岁岁种桃花儿10 分钟前
SpringCloud从入门到上天:Nacos做微服务注册中心(二)
java·spring cloud·微服务
Word码13 分钟前
[C++语法] 继承 (用法详解)
java·jvm·c++
TT哇19 分钟前
【实习 】银行经理端两个核心功能的开发与修复(银行经理绑定逻辑修复和线下领取扫码功能开发)
java·vue.js
逝水如流年轻往返染尘22 分钟前
Java中的数组
java
Anita_Sun35 分钟前
一看就懂的 Haskell 教程 - 类型推断机制
后端·haskell
java1234_小锋39 分钟前
Java高频面试题:BIO、NIO、AIO有什么区别?
java·面试·nio
Anita_Sun1 小时前
一看就懂的 Haskell 教程 - 类型签名
后端·haskell
七八星天1 小时前
C#代码设计与设计模式
后端
用户8307196840821 小时前
Java IO三大模型(BIO/NIO/AIO)超详细总结
java