Java 14の新しい機能


JDK 14は2020年3月17日に汎用バージョンをリリースし、OracleのJDK/Java 14公式GA(General Available)をリリースしました.Javaが6ヶ月に1回のリリースサイクルを採用してから5回目のリリースです.
このリリースには、次の16の新しい機能が含まれています.
1.JEP 305:instanceof     (  )
2.JEP 343:    (     )
3.JEP 345:G1 NUMA-Aware     
4.JEP 349:JFR   
5.JEP 352:    Mapped Byte Buffers
6.JEP 358:     NullPointerException
7.JEP 359:Record(    )
8.JEP 361:switch   (   )
9.JEP 362:  Solaris SPARC   
10.JEP 363:  CMS( :Concurrent Mark Sweep)GC
11.JEP 364:macOS  ZGC
12.JEP 365:Windows  ZGC
13.JEP 366:  ParallelScavenge SerialOld GC  
14.JEP 367:  Pack200   API
15.JEP 368:   (     )
16.JEP 370:      API

簡単に言えば、コードはより簡潔で明快です.このうち、超実用的な構文機能としては、instanceofモードマッチング、Record、switch式、テキストブロック、Null PointerExceptionのヒント機能があります.
一、強化switch caseコードブロック
右矢印->コロンの代わりに、連結の判断をサポート
private static void switchCase() {
        String day = "1";
        switch (day) {
            case "  ", "  " -> System.out.println("        ");
            case "  " -> System.out.println("     ");
            case "  " -> System.out.println("     ");
            default -> System.out.println("       ");
        }

        boolean isWorkday = switch (day) {
            case "  ", "  " -> false;
            default -> {
                yield isWeekend(day);
            }
        };


        if (isWorkday) {
            System.out.println("isWorkday         ");
        }else{
            System.out.println("isworkday is false!");
        }
    }

    private static boolean isWeekend(String day) {
        if(day.equals("1")){
            return false;
        }
        return true;
    }

二、新規キーワードrecord(構築関数)
キーワードrecordによって、クラスの作成、get、set、equals、hashcodeなどの方法を書く代わりに
public record Range(String name, int age) {}

三、NPE NullPointerExceptionの誤位置決めを強化する
マルチレベルでは、どのオブジェクトがデータを取得するかをnullとして指定します.