0Pricing
Swift Academy · Ders

Seçenekli Değerlerde Nil Birleştirme ve Üçlü İşleç

Varsayılan değerler için ?? kullanın ve nil birleştirme işleçlerini zincirleyin.

Seçenekli Değerlerde Nil Birleştirme ve Üçlü İşleç, CoddyKit'te ücretsiz bir Swift Academy dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Swift Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Swift Academy kursu toplamda 4 dersten oluşur.

Hoş Geldiniz

Nil birleştirme işleci `??`, isteğe bağlı değer nil olduğunda varsayılan bir değer sağlar. Üçlü işleçle birlikte kullanıldığında kısa ve anlatımı güçlü bir isteğe bağlı değer işleme olanağı sunar.

?? İşleci

```swift let name: String? = nil let display = name ?? "Guest" print(display) // "Guest" let known: String? = "Alice" print(known ?? "Guest") // "Alice" ``` İsteğe bağlı değer nil değilse açılmış değeri kullanılır. Aksi halde varsayılan değer kullanılır.

Kısa Devre Değerlendirmesi

`??` işleminin sağ tarafı yalnızca sol taraf nil olduğunda değerlendirilir: ```swift func expensiveDefault() -> String { print("Computing...") return "Default" } let val: String? = "Existing" let result = val ?? expensiveDefault() // expensiveDefault not called ```

?? İşleçlerini Zincirleme

Birkaç yedek değeri denemek için birden çok `??` işleci zincirleyin: ```swift let primary: String? = nil let secondary: String? = nil let fallback = "Anonymous" let user = primary ?? secondary ?? fallback print(user) // "Anonymous" ``` Değerlendirme, nil olmayan ilk değerde durur.

Hesaplanan Özelliklerle ??

```swift struct Config { var theme: String? var displayTheme: String { theme ?? "light" } } var c = Config() print(c.displayTheme) // "light" c.theme = "dark" print(c.displayTheme) // "dark" ``` Hesaplanan özelliklerde varsayılan değer kullanımı için temiz bir örüntüdür.

İsteğe Bağlı Değerlerle Üçlü İşleç

Üçlü `condition ? a : b` işleci, isteğe bağlı değer kontrolleriyle çalışabilir: ```swift let score: Int? = 85 let label = score != nil ? "\(score!)" : "No score" ``` Ancak `??` genellikle daha temizdir: ```swift let label = score.map { "\($0)" } ?? "No score" ```

Dönüştürme İçin Optional.map

Bir isteğe bağlı değerin sarılmış değerini açmadan dönüştürün: ```swift let maybeInt: Int? = 42 let maybeStr = maybeInt.map { "Value: \($0)" } // Optional("Value: 42") let nilInt: Int? = nil let nilStr = nilInt.map { "Value: \($0)" } // nil ```

İsteğe Bağlı Zincirleme İçin flatMap

Dönüşümün kendisi bir isteğe bağlı değer döndürdüğünde `flatMap` kullanın: ```swift let str: String? = "123" let num = str.flatMap { Int($0) } // Optional(123) let bad: String? = "abc" let nil2 = bad.flatMap { Int($0) } // nil ```

??= Atama İşleci (Yerleşik Değil)

Swift'te yerleşik `??=` yoktur, ancak bunu benzetebilirsiniz: ```swift var cache: [String: Int] = [:] // Assign only if nil: if cache["key"] == nil { cache["key"] = expensiveCompute() } // Or with a helper: func ??= (lhs: inout T?, rhs: @autoclosure () -> T) { if lhs == nil { lhs = rhs() } } ```

Okunabilirlik Yönergeleri

Doğru aracı seçin: • `??` — basit varsayılan değerler • `if let` — açılmış değere birden çok ifadede ihtiyaç duyduğunuzda • `guard let` — ön koşul ve erken çıkış • `.map` / `.flatMap` — açmadan dönüştürme Nil durumunun gerçekten gerçekleşemeyeceğinden emin olmadığınız sürece `!` ile zorunlu açmadan kaçının.

Hızlı Kontrol

`optional ?? default`, `optional` değeri `nil` olduğunda ne döndürür?

Özet

Temel çıkarımlar: • `a ?? b` — `a` nil değilse değerini, aksi halde `b` değerini döndürür • Kısa devre yapar: `b`, yalnızca `a` nil olduğunda değerlendirilir • Zincirleyin: `a ?? b ?? c` • `.map` sarılmış değeri dönüştürür; `.flatMap`, dönüşümün isteğe bağlı değer döndürmesini ele alır • Üçlü işleç ve zorunlu açma yerine `??` kullanmayı tercih edin Sırada: `?.` ile isteğe bağlı zincirleme

Sıkça Sorulan Sorular

“Seçenekli Değerlerde Nil Birleştirme ve Üçlü İşleç” dersi ücretsiz mi?

Evet — “Seçenekli Değerlerde Nil Birleştirme ve Üçlü İşleç” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Swift Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Swift Academy kursu toplamda 4 dersten oluşur.

“Seçenekli Değerlerde Nil Birleştirme ve Üçlü İşleç” dersinde ne öğreneceğim?

Varsayılan değerler için ?? kullanın ve nil birleştirme işleçlerini zincirleyin. Swift Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Swift Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Swift Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.

“Seçenekli Değerlerde Nil Birleştirme ve Üçlü İşleç” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Swift Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Swift Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. if let ve guard let Bağlama
  2. Seçenekli Değerlerde Nil Birleştirme ve Üçlü İşleç
  3. Seçenekli Değerlerde İsteğe Bağlı Zincirleme ?. İşleci
  4. Örtük Açılmış Seçenekli Değerler ve Bunlardan Kaçınılması Gereken Durumlar
← Swift Academy Sayfasına Dön