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 分钟前
《LikeShop全产品技术硬核拆解:ThinkPHP8+Vue3+UniApp架构,私有化部署与二次开发实战指南》
java·低代码·系统架构·php·开源软件
卷无止境2 分钟前
当FastAPI遇上机器学习,一个脚手架工具能省下多少工夫
后端·python·fastapi
一木 之林4 分钟前
C/C++ 面向对象编程(OOP)(进阶)
java·c语言·c++
卷无止境11 分钟前
Kilo CLI 到底是什么
人工智能·后端·python
coderCN19 分钟前
Nodejs 响应头和请求头
后端·node.js
SamDeepThinking28 分钟前
里氏替换原则的盲区:为什么符合契约的List替换依然会失败?
后端·面试·程序员
摇滚侠31 分钟前
《SpringBoot 3:入门与应用实战》第 9 章 使用 WebMvc 开发应用 阅读笔记 2
java·spring boot·笔记
码事漫谈35 分钟前
比尔·盖茨这次谈的不是模型,是账单
前端·后端
小林ixn38 分钟前
从零设计一个博客系统的数据库:表结构、索引与约束的实战思考
数据库·后端·mysql
technology_x1 小时前
液冷超充站设备厂家哪家好?2026年功率与散热对比
java·开发语言