If Let ile Unwrapping
Coddy'nin Swift Journey'sinin Temeller bölümünün bir parçası — ders 12 / 86.
Bir optional içindeki değere güvenli bir şekilde erişmek için, optional binding adı verilen bir teknik olan if let yapısını kullanırız. Bu, optional'ın bir değer içerip içermediğini kontrol eder ve eğer içeriyorsa, onu geçici bir sabite açar (unwrap eder).
var username: String? = "Swift_Dev"
if let name = username {
print("Welcome, \(name)")
} else {
print("No username found")
}
// Hoş geldin, Swift_DevBurada, if let, username değişkeninin bir değere sahip olup olmadığını kontrol eder. Sahip olduğu için, değer sadece if bloğu içinde var olan name değişkenine çıkarılır (unwrap edilir). Eğer username, nil olsaydı, bunun yerine else bloğu çalışırdı.
var age: Int? = nil
if let unwrappedAge = age {
print("Age is \(unwrappedAge)")
} else {
print("Age not provided")
}
// Yaş belirtilmediage, nil olduğu için koşul başarısız olur ve else bloğu çalışır. Bu, eksik bir değeri doğrudan kullanmaya çalışmamız durumunda meydana gelebilecek çökmeleri önler.
Görev
KolaySize aşağıdaki değişken verilmiştir:
var nickname: String? = "CoddyLearner"nickname değişkenini güvenli bir şekilde açmak (unwrap) için if let kullanın. Eğer bir değer içeriyorsa, [value] açılmış takma ad olacak şekilde Hello, [value]! yazdırın. Eğer nil ise, No nickname set yazdırın.
Kopya kağıdı
Bir optional'ı güvenli bir şekilde açmak (unwrap) ve değerine erişmek için if let (isteğe bağlı bağlama) kullanın:
var username: String? = "Swift_Dev"
if let name = username {
print("Welcome, \(name)")
} else {
print("No username found")
}
// Welcome, Swift_DevEğer optional bir değer içeriyorsa, bu değer sadece if bloğu içinde var olan geçici bir sabite açılır (unwrap edilir). Eğer optional nil ise, else bloğu çalışır:
var age: Int? = nil
if let unwrappedAge = age {
print("Age is \(unwrappedAge)")
} else {
print("Age not provided")
}
// Age not providedKendin dene
var nickname: String? = "CoddyLearner"
// TODO: Kodunuzu aşağıya yazın
// nickname'i güvenli bir şekilde açmak (unwrap) için if let kullanın
// Eğer bir değer içeriyorsa, "Hello, [value]!" yazdırın
// Eğer nil ise, "No nickname set" yazdırınBu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Temeller bölümündeki tüm dersler
4Operatörler Bölüm 1
Aritmetik OperatörlerModül OperatörüBileşik AtamaÖzet - Basit MatematikKarşılaştırma Operatörleri7Temel Giriş/Çıkış
Print FonksiyonuString InterpolationReadLine GirişiTür DönüşümüÖzet - 120'ye KadarÖzet - Doğru veya Yanlış10Fonksiyonlar
Fonksiyon TanımlamaParametreler ve ArgümanlarDönüş DeğerleriArgüman EtiketleriÖzet - Sigma FonksiyonuÖzet - Doğrulama FonksiyonuVarsayılan Değerler13Diziler Üzerinde Yineleme
Elemanlar Üzerinde YinelemeEnumerate MetoduStringler Üzerinde Yineleme P1Stringler Üzerinde Yineleme P22Değişkenler
Let vs VarTip BelirteçleriSayılarStringBooleanİsimlendirme KurallarıÖzet - Değişkenleri Başlatma5Operatörler Bölüm 2
Mantıksal Operatörler Bölüm 1Mantıksal Operatörler Bölüm 2Özet - Basit MantıkMantıksal Operatörler Bölüm 3Ternary Operatör8Hesap Paylaşım Hesaplayıcısı
Hoş Geldiniz MesajıGirdi Alma14İleri Seviye Diziler
Dizi Dilimleme Bölüm 1Dizi Dilimleme Bölüm 2Sıralı Yapı OperatörleriContains Metodu3Opsiyoneller
Opsiyoneller NedirIf Let ile UnwrappingGuard LetNil Coalescing OperatörüÖzet - Güvenli Unwrapping6Karar Yapıları
If İfadesiIf - ElseÖzet - Basit Hesap MakinesiSwitch İfadesiAralıklı Switch Kullanımı9Döngüler
For-In DöngüsüWhile DöngüsüRepeat-While DöngüsüBreakContinueÖzet - FaktöriyelDöngülerde Aralıklarİç İçe DöngülerÖzet - Dinamik Girdi