Java 16 | Java 15 | Java 14 | Java 13 | Java 12 | Java 11 | Java 10 | Java 9 | Java 8
Java 13
Release notes | Specification | JEPs
JEP Name Category Summary
354 Switch Expressions (Second Preview)
Extend switch so it can be used as either a statement or an expression, and so that both forms can use either traditional case ... : labels (with fall through) or new case ... -> labels (with no fall through), with a further new statement for yielding a value from a switch expression. These changes will simplify everyday coding, and prepare the way for the use of pattern matching (JEP 305) in switch. This is a preview language feature in JDK 13.
355 Text Blocks (Preview)
Add text blocks to the Java language. A text block is a multi-line string literal that avoids the need for most escape sequences, automatically formats the string in a predictable way, and gives the developer control over format when desired. This is a preview language feature in JDK 13.
350 Dynamic CDS Archives
Extend application class-data sharing to allow the dynamic archiving of classes at the end of Java application execution. The archived classes will include all loaded application classes and library classes that are not present in the default, base-layer CDS archive.
353 Reimplement the Legacy Socket API
Replace the underlying implementation used by the java.net.Socket and java.net.ServerSocket APIs with a simpler and more modern implementation that is easy to maintain and debug. The new implementation will be easy to adapt to work with user-mode threads, a.k.a. fibers, currently being explored in Project Loom.
351 ZGC: Uncommit Unused Memory (Experimental)
Garbage Collector
Enhance ZGC to return unused heap memory to the operating system.