İçeriğe geç

Swift ile Type Casting

swift

Merhabalar bu yazımda Swift ile Değişkenin türü nasıl değiştirilir, cast edilir bunun örneğini vereceğim.

İlk olarak diğer programlama dillerindeki kullanıma benzeyen sınıf ismiyle cast işlemi bulunakta aşağıda örneğini inceleyebilirsiniz.

var strnum:String = "42"
var strfloat:String = "3.212"

var intnum:Int = Int(strnum)!
var floatnum:Float = Float(strfloat)!

Basit bir şekilde çevirme işlemi gerçekleşti gördüğünüz gibi.

Swift dilinde birde as,as!,as? downcasting işlemi yapan operatörler bulunur, sıklıkla kullanılmaktadır.

Aşağdaki örnekte if  binding işlemi gerçekleştiğinde döngü sonlanacak ve UIButtonun arraydaki konumu bulunacaktır.

let objArr = [1,2,3,"K&",UIView(),UIButton(),UIDatePicker(),UITextView()]
var locationArr:Int = 0

for ob in objArr {
    
    if let obj = ob as? UIButton {

        break
    }

    locationArr += 1  // 5
}

Burdaki as her bir indiste ilerleyip hem kontrol hemde UIButton sınıf nesnesini obj değişkenine atayacaktır.

as? olduğu zaman cast işlemi nil‘de olabilir anlamına gelmektedir optional olarak işlenmekte as! olduğu zaman unwraping işlemi yapıp cast edecek normal olarak as olduğu zaman ise normal atama yapacaktır.

var data = "13"

if let cdata = data as String! {
    print(cdata) // 13
}

 

Tarih:Swift

Bu yazı yorumlara kapalı.

Copyright © 2020 Kenan Atmaca