CodeBlanks Logo Icon CodeBlanks

Ternary

? : ile tek satır koşulu öğrenirsin.

Ternary

Ternary işleci ? : tek satırda koşul yazar. koşul ? doğruDeğer : yanlışDeğer biçiminde kullanılır.

int score = 75;
String result = (score >= 50) ? "Geçti" : "Kaldı";
System.out.println(result);  // Geçti

Ternary bir ifade üretir; bu yüzden bir değişkene atanabilir veya metodun parametresine verilebilir. if-else ile aynı işi yapar ama daha kısadır. Basit iki dallı seçimlerde okunaklıdır.

Ternary ne zaman?

Ternary basit iki dallı atamalar için idealdir. Karmaşık koşullarda veya yan etki (atama, artırma) gerektiren durumlarda if-else tercih edilir.

// İyi: basit seçim
String etiket = (age >= 18) ? "Yetişkin" : "Çocuk";

// Kötü: yan etki
(score >= 50) ? count++ : count--;

İç içe ternary yazmak mümkün ama okunabilirliği düşürür. Birden fazla dal gerekiyorsa if-else veya switch daha iyidir.

Uygulama Tek/çift kontrolü

Bir Main sınıfı ve main metodu yaz. int n değişkenine 7 ata. String parity değişkenine (n % 2 == 0) ? "Çift" : "Tek" ata. println ile parity'i yazdır.

Örnek çözüm

Main.java
public class Main {
    public static void main(String[] args) {
        int n = 7;
        String parity = (n % 2 == 0) ? "Çift" : "Tek";
        System.out.println(parity);
    }
}

Beklenen çıktı

Tek

Soru ve cevaplar

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

1 Ternary ifadesini tamamla

Soru
int score = 75;
String result = (score >= 50) ? ____ : "Kaldı";
Cevap
int score = 75;
String result = (score >= 50) ? "Geçti" : "Kaldı";

Açıklama: Koşul true ise "Geçti" atanır.

2 Ternary kavramlarını eşleştir

Kavram Anlamı
? Doğru dal
: Yanlış dal
(x > 0) Koşul
"Evet" Değer

3 int x = 5; String s = (x > 0) ? "Pozitif" : "Negatif"; — s ne olur?

  • "Pozitif" Doğru cevap
  • "Negatif"
  • null
  • Hata

Açıklama: x > 0 true olduğu için "Pozitif" atanır.

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