İçeriğe geç

Swift ile Any vs AnyObject

Merhabalar bu yazımda Swift dilinde bulunan Any ve AnyObject tiplerinin farkından ve kullanımından bahsedeceğim.

Bu iki tip ismindende anlaşılacağı gibi herhangi bir değişken tipi alabilir ancak aralarında farklar vardır.

Örnek olarak Any tipi içerisine tüm değişken tiplerini alabilir.

class Hello {
    init() {
        print("Hi everyone!")
    }
}

let helloObj = Hello()

let anyArr:[Any] = [1,2,3,"Kenan",UIButton(),true,3.14,UIView(),helloObj]

Ancak AnyObject ile aynı işlemi denediğimiz zaman her tipi kabul etmediğini görürüz.

let anyObjArr:[AnyObject] = [1,2,"Heey"] // Value of type 'Int' does not conform to expected element type 'AnyObject'

AnyObject ile Class tiplerini ve Objc tiplerini dizi içerisine yükleyebilirsiniz.

class Hello {
    init() {
        print("Hi everyone!")
    }
}

let helloObj = Hello()
let nsStr = NSString(string: "Kenan Atmaca")
let anyObjArr:[AnyObject] = [helloObj, nsStr]

Bu yüzden servisten alacağınız verilere göre bu yükleme doğru değişken tipini seçerek gerçekleştirebilirsiniz.

 

 

Tarih:SwiftSwift 4

İlk Yorumu Siz Yapın

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Copyright © 2021 Kenan Atmaca