Menu
Coddy logo textTech

Optional Değerler Nedir

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

Bazen bir değişkenin hiç değeri olmayabilir. Swift'te bir değerin yokluğunu opsiyoneller kullanarak ifade ederiz. Bir optional, "bir değer var ve bu değer x'e eşit" veya "hiç değer yok" anlamına gelir.

Bir optional bildirmek için türün ardından bir soru işareti ? ekle:

var nickname: String? = "Alex"
var age: Int? = nil

Yukarıdaki örnekte nickname, "Alex" değerini içerirken age nil değerini içerir: Swift'in "değer yok" deme şekli. Normal değişkenler nil olamaz, ancak optional'lar olabilir.

optional'ı içinde bir şey bulunabilecek ya da boş olabilecek bir kutu olarak düşün. İçindeki şeyi kullanmadan önce gerçekten orada bir şey olup olmadığını kontrol etmen gerekir. Bu, Swift'te beklenmedik eksik değerlerden kaynaklanan çökmeleri önlemeye yardımcı olan önemli bir güvenlik özelliğidir.

var score: Int? = 100
print(score) // Optional(100)

score = nil
print(score) // nil

Bir değere sahip bir optional yazdırdığınızda, yalnızca 100 yerine Optional(100) gösterdiğine dikkat edin. İçindeki gerçek değere erişmek için optional'ın unwrap edilmesi gerekir; bunu gelecek derslerde ele alacağız.

challenge icon

Görev

Kolay

createOptional adında, bir sayı alan ve bu sayının optional olarak yazdırıldığında nasıl görüneceğini gösteren bir string döndüren bir fonksiyon yazın.

Önemli: Bu fonksiyon bir String döndürür. Bir optional'a benzeyen metin yazıyorsunuz; gerçek bir optional değer döndürmüyorsunuz.

Bir değer içeren optional'ı yazdırdığınızda Swift, onu Optional(value) biçiminde gösterir.

Fonksiyon söz dizimi hatırlatması: Swift'te bir değer döndüren fonksiyon, dönüş türünü belirtmek için -> okunu ve sonucu geri göndermek için return anahtar sözcüğünü kullanır. Örneğin:

func myFunction(param: Int) -> String {<br>    return "result"<br>}

Dönüş string'ini string interpolasyonu kullanarak oluşturabilirsiniz: "Optional(\(value))": \(value) bölümü sayıyı doğrudan string'in içine ekler.

Parametreler:

  • value (Int): Optional biçimine dönüştürülecek sayı

Döndürür: Optional(value) bölümünün sağlanan sayı olduğu value biçiminde bir string.

Örnek: Girdi 100 ise "Optional(100)" döndürün

Kendin dene

func createOptional(value: Int) -> String {
    // Gerçek bir optional değil, optional gibi görünen bir String döndür
    // String interpolation kullanarak sayıyı parantezlerin arasına yerleştir
    return "Optional()"
}
quiz iconKendini test et

Bu 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

Kendi başına pratik yap: Swift playground