Java 17 (LTS)

Java 12

JEP 325: Switch Expressions (Preview) (opens in a new tab)

Java 13

JEP 354: Switch Expressions (Second Preview) (opens in a new tab)

Java 14

JEP 305: Pattern Matching for instanceof (Preview) (opens in a new tab)

JEP 361: Switch Expressions (opens in a new tab)

  • Arrow labels
  • Switch expressions
    • The cases of a switch expression must be exhaustive; for all possible values there must be a matching switch label.
  • Yielding a value

Collection Factories

Stream API

Java 15

JEP 360: Sealed Classes (Preview) (opens in a new tab)

JEP 371: Hidden Classes (opens in a new tab)

JEP 375: Pattern Matching for instanceof (Second Preview) (opens in a new tab)

JEP 378: Text Blocks (opens in a new tab)

Java 16

JEP 380: Unix-Domain Socket Channels (opens in a new tab)

JEP 394: Pattern Matching for instanceof (opens in a new tab)

JEP 395: Records (opens in a new tab)

JEP 397: Sealed Classes (Second Preview) (opens in a new tab)

Java 17

JEP 409: Sealed Classes (opens in a new tab)