当前位置: 首页 > 教程 > Java14 >

Java14 instanceof的模式匹配

精华
小牛编辑
166浏览
2023-03-14

Java 14 引入了 instanceof 运算符以将类型测试模式作为预览功能。类型测试模式有一个predicate来指定具有单个绑定变量的类型。

Java14 instanceof语法

if (obj instanceof String s) {
}

Java14 instanceof的示例

ApiTester.java

package cn.xnip;

public class APITester {
   public static void main(String[] args) {
      String message = "Welcome to xnip.cn";
      Object obj = message;
      // Old way of getting length
      if(obj instanceof String){
         String value = (String)obj;
         System.out.println(value.length());
      }
      // New way of getting length
      if(obj instanceof String value){
         System.out.println(value.length());
      }
   }
}

编译并运行程序

$javac -Xlint:preview --enable-preview -source 14 APITester.java
$java --enable-preview APITester

输出结果为

25
25