OpenJDK 提案将改进 Java 模式匹配

位置:首页>文章>详情   分类: Java教程 > 编程技术   阅读(404)   2023-06-26 07:54:18

Java 编程将通过记录模式和数组模式以及开关表达式和语句的模式匹配得到增强,尽管这些功能的到来时间仍未确定。

在 3 月 23 日的在线演示中,Oracle 技术人员咨询成员加文比尔曼将这些功能列为两个 JDK(Java 开发工具包)增强提案的重点,这些提案针对即将发布的尚未确定的 Java 版本,这会将它们包括在预览阶段。希望它们会出现在计划于 9 月发布的 JDK 17 发布 中。

在 Java 语言中支持记录模式和数组模式以及类型模式(来自 Java 16)将显着增强模式匹配的表现力和实用性,并实现更复杂和可组合的数据查询,草案提议指出。记录模式、数组模式和类型模式可以嵌套,就像模式中的模式一样。类型模式的语法或语义不会改变。

模式匹配被吹捧为一种允许程序中通用逻辑的机制,即从对象中有条件地提取组件,因此可以更简洁、更安全地表达它们。该提案指出,在 3 月 16 日发布的 JDK 16 中,instanceof 运算符被扩展为采用类型模式并执行模式匹配。记录模式和数组模式提案建立在 instanceof 的模式匹配之上。

同时,打开模式匹配 可以针对多种模式对表达式进行测试,每种模式都有特定的操作,从而可以安全、简洁地表达复杂的面向数据的查询。该提案的目标包括通过允许模式出现在 case 标签中并允许在需要时放宽 switch 的历史空敌意来扩展 switch 表达式和语句的表现力和适用性。

提案草案还引入了一种保护模式,以便可以使用任意布尔表达式和括号模式来改进模式匹配逻辑。现有的 switch 表达式仍然可以在没有更改的情况下进行编译,并以相同的语义执行。

So far, the features officially targeted for JDK 17 include 增强的伪随机数生成器 and a 新的 MacOS 渲染管线. More will almost certainly be added in coming months.

地址:https://www.cundage.com/article/3612908-openjdk-proposals-would-improve-java-pattern-matching.html

相关阅读

基础设施即代码 vendor 缅甸语 is adding support for 爪哇 and YAML, as it looks to allow software developers to...
Java is 同时, 面向对象, and intended to let application developers “一次编写,随处运行” (WORA). Java is consider...
Java Development Kit (JDK) 是 Java 编程中使用的三个核心技术包之一,另外两个是 JVM(Java 虚拟机)和 JRE(Java 运行时环境)。区分这三种技术并了解...
For the second consecutive year, Python 被评为 TIobe 的年度编程语言, a distinction the company awards to th...
Java 19 刚到 将于 9 月 20 日发布,Java 20 是下一个待定事项,预计将于 2023 年 3 月发布。该版本可能会为通用泛型、不可变数据和字符串模板添加新功能,并完成诸如此类的...
尽管 Java 8 已经问世近八年了,但在 Perforce Software 公司最近的一项调查中,它仍然是用户中最常用的 Java 版本。然而,调查发现,许多商店计划升级到更新得多的 Jav...
Java 18 将在两周内作为生产版本发布,Java 19 已初具规模。标准 Java 的下一个版本将通过 API 向前推进,以与 Java 运行时之外的代码进行互操作,这是许多潜在提案中的第一...
Jakarta EE 10, the latest version of the Eclipse Foundation 的企业 Java 平台, arrives today, emphasizi...
Java 20 或 Java Development Kit (JDK) 20 是标准 Java 的下一个计划版本,现已功能齐全。正式标记为发布的六个功能处于孵化或预览阶段。这些包括作用域值、记...
Apache Pulsar 是一个开源分布式发布-订阅消息传递系统,最初由 Yahoo 创建,是 Apache Software Foundation 的一部分。