Swift - Veri Türleri

Herhangi bir programlama dilinde programlama yaparken, bilgileri depolamak için farklı değişken türleri kullanmanız gerekir. Değişkenler, değerleri saklamak için ayrılmış bellek konumlarından başka bir şey değildir. Bu, bir değişken oluşturduğunuzda bellekte biraz yer ayırdığınız anlamına gelir.

Dize, karakter, geniş karakter, tam sayı, kayan nokta, Boole, vb. Gibi çeşitli veri türlerinin bilgilerini depolamak isteyebilirsiniz. Bir değişkenin veri türüne bağlı olarak, işletim sistemi belleği ayırır ve ayrılmışta nelerin saklanabileceğine karar verir. hafıza.

Yerleşik Veri Türleri

Swift 4, programcıya zengin çeşitlilikte yerleşik ve kullanıcı tanımlı veri türleri sunar. Aşağıdaki temel veri türleri en sık değişkenleri bildirirken görülür -

  • Int or UInt- Bu, tam sayılar için kullanılır. Daha spesifik olarak, 32 veya 64 bit işaretli tamsayı tanımlamak için Int32, Int64, 32 veya 64 bit işaretsiz tamsayı değişkenlerini tanımlamak için UInt32 veya UInt64 kullanabilirsiniz. Örneğin, 42 ve -23.

  • Float- Bu, 32 bitlik bir kayan nokta sayısını ve daha küçük ondalık noktalı sayıları temsil etmek için kullanılır. Örneğin, 3.14159, 0.1 ve -273.158.

  • Double- Bu, 64 bitlik bir kayan nokta sayısını temsil etmek için kullanılır ve kayan nokta değerlerinin çok büyük olması gerektiğinde kullanılır. Örneğin, 3.14159, 0.1 ve -273.158.

  • Bool - Bu, doğru veya yanlış olan bir Boole değerini temsil eder.

  • String- Bu sıralı bir karakter koleksiyonudur. Örneğin, "Merhaba, Dünya!"

  • Character- Bu, tek karakterli bir dizedir. Örneğin, "C"

  • Optional - Bu, bir değeri tutabilen veya hiç içermeyen bir değişkeni temsil eder.

  • Tuples - Bu, birden çok değeri tek Bileşik Değer içinde gruplamak için kullanılır.

Tamsayı türleriyle ilgili birkaç önemli noktayı burada listeledik -

  • 32 bit platformda Int, Int32 ile aynı boyuttadır.

  • 64 bit platformda Int, Int64 ile aynı boyuttadır.

  • 32 bitlik bir platformda UInt, UInt32 ile aynı boyuttadır.

  • 64 bitlik bir platformda, UInt, UInt64 ile aynı boyuttadır.

  • Int8, Int16, Int32, Int64, 8 Bit, 16 Bit, 32 Bit ve 64 Bit işaretli tamsayı biçimlerini temsil etmek için kullanılabilir.

  • UInt8, UInt16, UInt32 ve UInt64, işaretsiz tamsayının 8 Bit, 16 Bit, 32 Bit ve 64 Bit formlarını temsil etmek için kullanılabilir.

Bağlı Değerler

Aşağıdaki tablo değişken türünü, değeri bellekte saklamak için ne kadar bellek gerektiğini ve bu tür değişkenlerde saklanabilecek maksimum ve minimum değerin ne olduğunu gösterir.

Tür Tipik Bit Genişliği Tipik Aralık
Int8 1 bayt -127 ila 127
UInt8 1 bayt 0 ile 255
Int32 4 bayt -2147483648 ile 2147483647
UInt32 4 bayt 0 ila 4294967295
Int64 8 bayt -9223372036854775808 ile 9223372036854775807
UInt64 8 bayt 0 ile 18446744073709551615
Yüzer 4 bayt 1.2E-38 - 3.4E + 38 (~ 6 basamak)
Çift 8 bayt 2.3E-308 - 1.7E + 308 (~ 15 basamak)

Tür Takma Adları

Kullanarak mevcut bir tür için yeni bir ad oluşturabilirsiniz. typealias. Tipalias kullanarak yeni bir tür tanımlamak için basit sözdizimi:

typealias newname = type

Örneğin, aşağıdaki satır derleyiciye şunu bildirir: Feet başka bir isim Int -

typealias Feet = Int

Şimdi, aşağıdaki bildirim tamamen yasaldır ve mesafe adı verilen bir tamsayı değişkeni oluşturur -

typealias Feet = Int
var distance: Feet = 100
print(distance)

Yukarıdaki programı oyun alanını kullanarak çalıştırdığımızda aşağıdaki sonucu alıyoruz.

100

Tip Güvenlik

Swift 4, tür açısından güvenli bir dildir, yani kodunuzun bir parçası bir String beklerse, yanlışlıkla bir Int geçemezsiniz.

Swift 4 tür açısından güvenli olduğundan, kodunuzu derlerken tür kontrolleri gerçekleştirir ve uyumsuz türleri hata olarak işaretler.

var varA = 42
varA = "This is hello"
print(varA)

Yukarıdaki programı derlediğimizde, aşağıdaki derleme zamanı hatasını üretir.

main.swift:2:8: error: cannot assign value of type 'String' to type 'Int'
varA = "This is hello"

Tür Çıkarımı

Tür çıkarımı, bir derleyicinin, yalnızca sağladığınız değerleri inceleyerek kodunuzu derlediğinde belirli bir ifadenin türünü otomatik olarak çıkarmasını sağlar. Swift 4, aşağıdaki gibi uygun türü bulmak için tür çıkarımını kullanır.

// varA is inferred to be of type Int
var varA = 42
print(varA)

// varB is inferred to be of type Double
var varB = 3.14159
print(varB)

// varC is also inferred to be of type Double
var varC = 3 + 0.14159
print(varC)

Yukarıdaki programı oyun alanını kullanarak çalıştırdığımızda, aşağıdaki sonucu elde ederiz -

42
3.14159
3.14159