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…