CodeBlanks Logo Icon CodeBlanks

switch

switch, case, break ve default ile çoklu durum seçmeyi öğrenirsin.

switch

Bir değişkenin birçok değerini sıralı denetlemek için switch kullanılır. switch (day) { case "Mon": ...; break; default: ...; } yazımında day'in değerine göre eşleşen case çalışır.

switch, çok sayıda else if'in daha okunaklı halidir. case değerleri sabit olmalıdır; değişken olamaz. Hiçbir case eşleşmezse default çalışır; default opsiyoneldir ama yazmak iyi bir alışkanlıktır.

break ve default

Her case bloğunun sonunda break; ile switch'ten çıkılır; aksi halde Dart hata verir. break ayrı bir kavramdır; döngülerle ayrıntısını bir sonraki bölümde göreceksin. Şimdilik switch'ten çıkmaya yarar bilmen yeter.

default bloğu, hiçbir case eşleşmediğinde çalışır. else'in switch'teki karşılığıdır. default genelde en sona yazılır ama zorunlu değildir. Pratik ilke: her switch'e bir default koyarak beklenmedik değerleri yakala.

Uygulama switch ile gün adı

String türünde day değişkeni tanımla ve değeri "Mon" olsun. switch (day) ile: case "Mon": bloğunda print("Pazartesi"); yaz ve break; ile çık. default: bloğunda print("Bilinmiyor"); yaz. Çıktı tek satırda Pazartesi olmalı.

Başlangıç kodu

main.dart
// day değişkenini tanımla, switch ile Mon'u Pazartesi'ye çevir ve yazdır

Örnek çözüm

main.dart
String day = "Mon";
switch (day) {
  case "Mon":
    print("Pazartesi");
    break;
  default:
    print("Bilinmiyor");
}

Beklenen çıktı

Pazartesi

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Parçayı işlevine eşle

Kavram Anlamı
switch (x) Denetlenecek değişken
case A: Bir değer eşleşmesi
default: Hiçbiri eşleşmeyince
break; Switch'ten çıkar

2 case satırını yaz

Soru
String day = "Mon";
switch (day) {
  case ____:
    print("Pazartesi");
    break;
  default:
    print("Bilinmiyor");
}
Cevap
String day = "Mon";
switch (day) {
  case "Mon":
    print("Pazartesi");
    break;
  default:
    print("Bilinmiyor");
}

Açıklama: case "Mon": şeklinde yazılır.

3 switch'te hiçbir case eşleşmezse ne çalışır?

main.dart
switch (x) {
  case 1: ...; break;
  default: ...;
}
  • default bloğu Doğru cevap
  • Program çöker
  • İlk case tekrar çalışır
  • Hiçbir şey

Açıklama: default bloğu, hiçbir case eşleşmediğinde çalışır.

Başlangıç bölümündeki tüm dersler