Menu
CoddyTech

Nil Birleştirme Operatörü

Coddy'nin Swift Journey'sinin Temel Bilgiler bölümünün bir parçası. Ders 14 / 86.

Bazen, bir isteğe bağlı değer nil olduğunda birden fazla kod satırı yazmadan varsayılan bir değer sağlamak istersin. Swift'in nil birleştirme operatörü (??) tam olarak bunu yapar. İsteğe bağlı değerin bir değeri varsa onu açar, nil ise varsayılan bir değer döndürür.

let nickname: String? = nil
let displayName = nickname ?? "Guest"
print(displayName) // Guest

nickname nil olduğu için operatör bunun yerine "Guest" değerini döndürür. nickname bir değere sahip olsaydı, o değer kullanılırdı.

let username: String? = "SwiftCoder"
let greeting = username ?? "Anonymous"
print(greeting) // SwiftCoder

Nil birleştirme operatörü, yedek bir değere ihtiyaç duyduğun tek satırlık ifadeler için idealdir. nil değerini varsayılan bir değerle değiştirmek istediğinde, if let ifadesi yazmaktan daha temiz bir seçenektir. Varsayılan değer isteğe bağlı değilse sonuç da isteğe bağlı olmaz; böylece başka bir açma işlemi yapmadan doğrudan kullanabilirsin.

challenge icon

Görev

Kolay
Bir username ve defaultName alan, ardından nil birleştirme operatörünü kullanarak uygun görüntüleme adını döndüren bir getDisplayName fonksiyonu yaz.

Kullanıcı adı boşsa (boş bir "" dizesiyle gösterilir), bunu nil olarak kabul et ve varsayılan adı döndür. Aksi takdirde kullanıcı adını döndür.

Parametreler:

  • username (String): Kullanıcının adı (boş dize nil değerini gösterir)
  • defaultName (String): Kullanılacak yedek ad

Döndürür: Boş değilse kullanıcı adını, aksi takdirde defaultName değerini.

İpucu: Fonksiyonunun içinde kullanıcı adını bir String? değişkeninde sakla ve kullanıcı adı "" değerine eşitse, basit bir if ile bu değişkeni nil olarak ayarla. Ardından yedek değeri sağlamak için ?? kullan.

Kendin dene

func getDisplayName(username: String, defaultName: String) -> String {
    // Kodu buraya yazın
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Temel Bilgiler bölümündeki tüm dersler

Kendi başına pratik yap: Swift playground