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.