W Javie 14 ulepszono nieco składnie dla instrukcji warunkowej switch. Do tej pory przykładowa instrukcja wyglądała tak:
String command = "add";
String result = "";
switch(command) {
case "add":
result = "ok";
break;
case "remove":
case "update":
result = "not ok";
break;
default:
result = "meh";
break;
}
Dzięki użyciu nowej składni możemy powyższe zamienić na coś o wiele przyjemniejszego dla oka:
String command = "add";
String result = "";
switch(command) {
case "add" -> result = "ok";
case "remove", "update" -> result = "not ok";
default -> result = "meh";
}
System.out.println(result);
Przede wszystkim pozbywamy się nieszczęsnego break, o którym to każdemu programiście zdarzyło się co najmniej raz w karierze zapomnieć. Dodatkowo wszystkie wartości jakie mają mieć taką samą obsługę wrzucam do jednego case’a, a nie tworzymy jeden pod drugim, co też jest generalnie czytelniejsze.
Ale to nie wszystko! Możemy też używać teraz switcha jako swoistej funkcji, mianowicie taki kod zadziała:
String command = "add";
String result = switch(command) {
case "add" -> "ok";
case "remove", "update" -> "not ok";
default -> "meh";
};
System.out.println(result);
Możemy ominąć niepotrzebne przypisywanie, tylko użyć switch jako funkcji, z tą różnicą, że nawet nie musimy używać return (podobnie jak w lambdach jednolinijkowych).
By być na bieżąco i mieć realny wpływ na tematykę tworzonych przeze mnie artykułów zapraszam do dołączenia do mojego newslettera.