0

Dart Dilinde Koşul Yapıları (if-else ve switch-case)

Dart dilinde koşul yapıları, programın belirli bir duruma göre farklı işlemler yapmasını sağlar. Bu yapılar, özellikle karar vermemiz gereken durumlarda kullanılır. Bu yazıda, if-else ve switch-case yapısına dair detaylara ve Dart dilinde nasıl kullanıldıklarına odaklanacağız.

if-else Yapısı

if-else yapısı, koşula bağlı olarak kodun bir kısmının çalıştırılmasını sağlar. Eğer koşul doğruysa if bloğu çalıştırılır. Eğer yanlışsa else bloğu çalışır.

Temel if-else Kullanımı:

void main() {
  int sayi = 10;
  
  if (sayi > 0) {
    print('Sayı pozitiftir.');
  } else {
    print('Sayı negatiftir.');
  }
}

İç içe if-else Yapıları: Birden fazla koşulun kontrol edilmesi gerektiğinde iç içe if-else yapıları kullanılır:

void main() {
  int sayi = 0;

  if (sayi > 0) {
    print('Sayı pozitiftir.');
  } else if (sayi < 0) {
    print('Sayı negatiftir.');
  } else {
    print('Sayı sıfırdır.');
  }
}

switch-case Kullanımı

switch-case yapısı, özellikle birden fazla durumu kontrol etmek gerektiğinde, if-else’in yerini alabilir. Bu yapı, genellikle belirli bir değişkenin alabileceği sınırlı sayıda değer için kullanılır ve if-else yapısına göre daha okunaklı olabilir.

switch-case Kullanımı:

void main() {
  String gun = 'Cuma';

  switch (gun) {
    case 'Pazartesi':
      print('Haftanın ilk günü.');
      break;
    case 'Salı':
      print('Haftanın ikinci günü.');
      break;
    case 'Çarşamba':
      print('Haftanın üçüncü günü.');
      break;
    case 'Perşembe':
      print('Haftanın dördüncü günü.');
      break;
    case 'Cuma':
      print('Haftanın beşinci günü.');
      break;
    case 'Cumartesi':
      print('Haftanın altıncı günü.');
      break;
    case 'Pazar':
      print('Haftanın yedinci günü.');
      break;
    default:
      print('Geçersiz gün.');
  }
}

if-else ve switch-case ile Haftanın Günleri Örneği

Aynı işlemi hem if-else yapısıyla hem de switch-case yapısıyla nasıl gerçekleştirebileceğimize bakalım. Haftanın atanan gun değişkenine denk gelen mesajı ekrana yazdıracağız.

void main() {
  String gun = 'Salı';

  if (gun == 'Pazartesi') {
    print('Haftanın ilk günü.');
  } 
  else if (gun == 'Salı') {
    print('Haftanın ikinci günü.');
  }  
  else if (gun == 'Çarşamba') {
    print('Haftanın üçüncü günü.');
  }  
  else if (gun == 'Perşembe') {
    print('Haftanın dördüncü günü.');
  }  
  else if (gun == 'Cuma') {
    print('Haftanın beşinci günü.');
  }  
  else if (gun == 'Cumartesi') {
    print('Haftanın altıncı günü.');
  }  
  else if (gun == 'Pazar') {
    print('Haftanın yedinci günü.');
  }  
  else {
    print('Geçersiz gün.');
  }
}
void main() {
  String gun = 'Salı';

  switch (gun) {
    case 'Pazartesi':
      print('Haftanın ilk günü.');
      break;
    case 'Salı':
      print('Haftanın ikinci günü.');
      break;
    case 'Çarşamba':
      print('Haftanın üçüncü günü.');
      break;
    case 'Perşembe':
      print('Haftanın dördüncü günü.');
      break;
    case 'Cuma':
      print('Haftanın beşinci günü.');
      break;
    case 'Cumartesi':
      print('Haftanın altıncı günü.');
      break;
    case 'Pazar':
      print('Haftanın yedinci günü.');
      break;
    default:
      print('Geçersiz gün.');
  }
}

if-else ve switch-case, Dart dilinde koşul yapıları arasında en yaygın kullanılan iki seçenektir. Hangi yapının kullanılacağı, çözülmek istenen probleme bağlı olarak değişir. Birden fazla durumda belirli işlemleri gerçekleştirmek gerektiğinde switch-case yapısı daha okunaklı ve düzenli olabilir. Ancak daha esnek ve karmaşık koşullarda if-else yapısı daha uygun olabilir. Dart dilini etkili bir şekilde kullanabilmek için her iki yapıyı da iyi anlamak önemlidir.

“Dart Dersleri ” serisinin tümünü görmek için tıklayınız.