? : Operator
int age = 42; string msg; if(age >= 18) msg = "Hoşgeldiniz"; else msg = "Üzgünüm"; Console.WriteLine(msg);
Yukarıdaki kod yaş değişkeninin değerini denetler ve ekrana karşılık gelen iletiyi görüntüler.
Bu aşağıdaki biçimde ?: Operatörünü kullanarak daha zarif ve daha kısa bir şekilde yapılabilir:
Exp1 ? Exp2 : Exp3;
?: operatörü şu şekilde çalışır: Exp1 değerlendirilir. Doğruysa, Exp2 değerlendirilir ve tüm ifadenin değeri olur. Exp1 yanlış ise, Exp3 değerlendirilir ve değeri ifade değerini alır.
Yani, yukarıdaki örnek aşağıdaki gibi yazılabilir:
int age = 42; string msg; msg = (age >= 18) ? "Welcome" : "Sorry"; Console.WriteLine(msg);