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

相关推荐
索荣荣18 小时前
Java Session 全面指南:原理、应用与实践(含 Spring Boot 实战)
java·spring boot·后端
Amumu1213819 小时前
Vue Router(二)
java·前端
念越19 小时前
数据结构:栈堆
java·开发语言·数据结构
千寻技术帮20 小时前
10333_基于SpringBoot的家电进存销系统
java·spring boot·后端·源码·项目·家电进存销
dear_bi_MyOnly20 小时前
【多线程——线程状态与安全】
java·开发语言·数据结构·后端·中间件·java-ee·intellij-idea
jiaguangqingpanda20 小时前
Day36-20260204
java·开发语言
tb_first20 小时前
万字超详细苍穹外卖学习笔记4
java·spring boot·笔记·学习·spring·mybatis
努力写代码的熊大20 小时前
c++异常和智能指针
java·开发语言·c++
山岚的运维笔记20 小时前
SQL Server笔记 -- 第15章:INSERT INTO
java·数据库·笔记·sql·microsoft·sqlserver
Yvonne爱编码20 小时前
JAVA数据结构 DAY5-LinkedList
java·开发语言·python