Yazılım geliştiriciler olarak bazen kod ekonomisine başvurmak istediğimiz durumlar olabilmektedir. Özellikle de if şartlarını oluştururken parantez açıp kapatmak yerine sınama işlemini tek satırda yapabilmekteyiz.
if(){}else{} kodu yerine kısaca ?: operatörlerinin kullanımına bakalım.
Senaryomuz, mantıksal bir durum kontrolünün sınamasına göre string değer döndürecek bir iş akışının hazırlanması şeklinde olabilir.
bool durumu = getDurum(); string sonuc=""; if (durumu) { sonuc = "Onaylanmış"; } else { sonuc = "Beklemede"; } Console.WriteLine(sonuc);
Yukarıda basitçe, durum değişkeninin true ve false olup olmadığı kontrol edilmektedir.
Bu işlemi kısaca ?: operatörüyle yaparsak şu şekilde olacaktır.
bool durumu = getDurum(); string sonuc = durumu ? "Onaylanmış" : "Beklemede"; Console.WriteLine(sonuc);
Bu şekilde if ve else yapısı iptal edilerek tek satırda işlem tamamlanmaktadır. Bir başka yazım şekli ise şu şekildedir:
string sonuc = durumu == true ? "Onaylanmış" : "Beklemede";
Yapı şu şekildedir:
string sonuc = <mantıksal kontrol> ? <true ise dönen değer> : <false ise dönen değer>;
Tekrar görüşmek ümidiyle…