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
KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^
コメント