Swift Academy · Ders

Optionals'a giriş: ?, nil, if let, guard let, ??

Optionals kavramını öğrenin: ? ile tanımlama, eksik değerleri nil ile gösterme ve if let, guard let ile ?? kullanarak sarmaldan çıkarma.

3. ders / 38 adım

Optionals'a giriş: ?, nil, if let, guard let, ??, CoddyKit'te ücretsiz bir Swift Academy dersidir. Bu, 3 dersinin 3. 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 3 dersten oluşur.

İsteğe Bağlı Değer Nedir?

İsteğe bağlı değerler, mevcut olabilecek veya nil olabilecek bir değeri temsil eder. Bir türü isteğe bağlı hâle getirmek için türün sonuna ? ekleyin.

  • Yokluğu açıkça ele alır
  • Birçok çökmeyi önler

if let bağlama

? ile tanımlayın, ardından mevcut olduğunda güvenli biçimde açmak için if let kullanın.

var nickname: String? = nil
print("nickname =", String(describing: nickname))

// Optional binding with if let
let input: String? = "Ada"
if let name = input {
    print("Hello, \\(name)")
} else {
    print("No name")
}

guard let

guard let, değeri açar ve nil durumunda erken çıkar; böylece kod düz ve okunabilir kalır.

func greet(_ maybeName: String?) {
    guard let name = maybeName else {
        print("Missing name"); return
    }
    print("Hi, \\(name)!")
}
greet(nil)
greet("Grace")

Nil birleştirme (??)

İsteğe bağlı değer nil olduğunda varsayılan bir değer sağlamak için ?? kullanın.

let provided: String? = nil
let username = provided ?? "Guest"
print("Username:", username)

İsteğe bağlı zincirleme

İsteğe bağlı zincirleme (?.), herhangi bir bağlantı nil olduğunda zinciri durdurur.

struct Profile { var city: String? }
struct User { var profile: Profile? }

let u1 = User(profile: Profile(city: "Paris"))
let u2 = User(profile: nil)

// Optional chaining safely traverses missing links
print(u1.profile?.city?.uppercased() ?? "No city")  // "PARIS"
print(u2.profile?.city ?? "No city")                // "No city"

İpuçları ve tuzaklar

İpuçları:

  • ! işaretini (zorunlu açma), değerin nil olmadığından yüzde 100 emin olmadıkça kullanmaktan kaçının.
  • Açıklık için if let veya guard let kullanmayı tercih edin.
  • Güvenli varsayılan değerler sağlamak için ?? kullanın.

guard let davranışı

Hızlı kontrol: guard let ne yapar?

Özet

Özet: İsteğe bağlı değerleri ? ile tanımlayın, yokluğu nil ile temsil edin, if let veya guard let kullanarak değerleri açın ve ?? ile varsayılan değerler sağlayın. Güvenli biçimde ilerlemek için isteğe bağlı zincirlemeyi kullanın.

Başlamak ücretsiz

Yapay zeka eğitmeniyle Swift öğren — ücretsiz

Tarayıcında gerçek kod yaz ve çalıştır, 7/24 yapay zeka eğitmeninden anında yardım al; web'de ya da uygulamada kaldığın yerden devam et.

Kurslar
122
Dersler
409

Sıkça Sorulan Sorular

“Optionals'a giriş: ?, nil, if let, guard let, ??” dersi ücretsiz mi?

Evet — “Optionals'a giriş: ?, nil, if let, guard let, ??” 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 3 dersten oluşur.

“Optionals'a giriş: ?, nil, if let, guard let, ??” dersinde ne öğreneceğim?

Optionals kavramını öğrenin: ? ile tanımlama, eksik değerleri nil ile gösterme ve if let, guard let ile ?? kullanarak sarmaldan çıkarma. 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, 3 dersinin 3. dersidir.

“Optionals'a giriş: ?, nil, if let, guard let, ??” 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. let ve var, tür çıkarımı, sabitler, demetler
  2. Temel türler: sayılar, Bool, String, Character
  3. Optionals'a giriş: ?, nil, if let, guard let, ??
← Swift Academy Sayfasına Dön