Java 13 ile birlikte yeni bir switch yapısı kullanılabilir oldu. Bu yapı switch işleminden sonuç alabilmemize olanak sağlıyor.
Örnek olarak aşağıda yer alan kod sayesinde switch içerisinde yer alan bir atama işlemine ihtiyaç duymadan sonucu bir değişkene atıyabiliyoruz.
String input = "test"; int status = switch (input) { case "test" -> 1; case "dev" -> 2; case "prod" -> 3; default -> 0; };
Switch expression sayesinde artık daha az kodla daha çok iş yapabiliyor olucağız. Aşağıda yer alan kod, haftanın hangi günü olduğunu sayı olarak alıp hafta için olup olmadığını kontrol ediyor.
int number = 3; String gun = switch (number) { case 6, 7 -> "hafta sonu"; default -> "hafta ici"; };
Aynı işlemi if kullanarak’da yapabiliriz. Belki bu işlemde if karşılığına oranla çok fazla fayda sağlamıyor gibi görünsede daha karmaşık örneklerde yararlılığı görülecektir.
if(number == 6 && number == 7){ gun = "Hafta Sonu"; }else{ gun = "Hafta ici"; }