This topic is about Java 14 – Switch Expressions.
Java 12 introduces expressions to Switch statement and released it as a preview feature. Java 13 added a new yield construct to return a value from switch statement. With Java 14, switch expression now is a standard feature.
- Each case block can return a value using yield statement.
- In case of enum, default case can be skipped. In other cases, default case is required.
Example
Consider the following example −
ApiTester.java
public class APITester { public static void main(String[] args) { System.out.println("Old Switch"); System.out.println(getDayTypeOldStyle("Monday")); System.out.println(getDayTypeOldStyle("Saturday")); System.out.println(getDayTypeOldStyle("")); System.out.println("New Switch"); System.out.println(getDayType("Monday")); System.out.println(getDayType("Saturday")); System.out.println(getDayType("")); } public static String getDayType(String day) { var result = switch (day) { case "Monday", "Tuesday", "Wednesday","Thursday", "Friday": yield "Weekday"; case "Saturday", "Sunday": yield "Weekend"; default: yield "Invalid day."; }; return result; } public static String getDayTypeOldStyle(String day) { String result = null; switch (day) { case "Monday": case "Tuesday": case "Wednesday": case "Thursday": case "Friday": result = "Weekday"; break; case "Saturday": case "Sunday": result = "Weekend"; break; default: result = "Invalid day."; } return result; } }
Compile and Run the program
$javac APITester.java $java APITester
Output
Old Switch Weekday Weekend Invalid day. New Switch Weekday Weekend Invalid day.
In this topic we learned about Java 14 – Switch Expressions. To know more, Click Here.