İçeriğe geç

Switch-Case Yapısı

switch-case yapısı, bir değişkenin değerine göre farklı kod bloklarını çalıştırmayı sağlar.
Birden fazla if-else yapısı yerine daha okunabilir bir alternatif sunar.


switch (degisken) {
case deger1:
// Kod bloğu
break;
case deger2:
// Kod bloğu
break;
default:
// Hiçbir koşul sağlanmazsa çalışır
}

💡 break komutu, eşleşme bulunduktan sonra diğer case’lerin çalışmasını engeller.


int gun = 3;
String gunAdi;
switch (gun) {
case 1:
gunAdi = "Pazartesi";
break;
case 2:
gunAdi = "Salı";
break;
case 3:
gunAdi = "Çarşamba";
break;
case 4:
gunAdi = "Perşembe";
break;
case 5:
gunAdi = "Cuma";
break;
case 6:
case 7:
gunAdi = "Hafta Sonu";
break;
default:
gunAdi = "Geçersiz gün!";
}
System.out.println("Gün: " + gunAdi);

Java 7’den itibaren switch yapısında String türü de desteklenmektedir.

String renk = "mavi";
switch (renk) {
case "kırmızı":
System.out.println("Dur!");
break;
case "yeşil":
System.out.println("Geç!");
break;
case "mavi":
System.out.println("Dikkatli ol!");
break;
default:
System.out.println("Bilinmeyen renk!");
}

Java 14 ile birlikte switch yapısı artık değer döndürebilir hale geldi.

String gun = "Pazartesi";
String mesaj = switch (gun) {
case "Pazartesi", "Salı", "Çarşamba", "Perşembe", "Cuma" -> "Hafta içi";
case "Cumartesi", "Pazar" -> "Hafta sonu";
default -> "Geçersiz gün";
};
System.out.println(mesaj);

Anahtar KelimeAçıklama
switchDeğişkeni kontrol eder
caseOlası değerleri belirtir
breakSwitch yapısını sonlandırır
defaultHiçbir eşleşme olmadığında çalışır

💡 Not: break kullanılmazsa, Java fall-through davranışı gösterir; yani sonraki case blokları da çalışır.