instanceof – 【Java16】

instanceof – 【Java16】

Java14でプレビューとして追加されたテキストブロックがJava16で正式に追加されました。

従来の書き方

package jp.co.confrage;

public class Instanceof {
    public static void main(String[] args)  {
        Object obj = "test";
        if (obj instanceof String) {
            String s = (String) obj; // キャスト
            System.out.println(s);
        }
    }
}

Java16からはマッチした際に変数定義ができるようになります。

値 instanceof 型 変数名と記述します。

package jp.co.confrage;

public class Instanceof {
    public static void main(String[] args)  {
        Object obj = "test";    
        if (obj instanceof String str) { // if文内で使用できるstr変数
            System.out.println(str);
        }
//      System.out.println(str); ここでは使えない
    }
}

参考サイト

https://blogs.oracle.com/otnjp/post/pattern-matching-for-instanceof-in-java-14-ja

コメント

株式会社CONFRAGE ITソリューション事業部をもっと見る

今すぐ購読し、続きを読んで、すべてのアーカイブにアクセスしましょう。

続きを読む

タイトルとURLをコピーしました