Published on

Swiftda Data Types

Authors

Dasturlashda ma'lumot turlari (data types) β€” o'zgaruvchida qanday turdagi ma'lumot saqlanishini belgilaydi. Masalan:

Swift
Data type belgilash
var num: Int = 25 print(num) print("Tur:", type(of: num))

Bu yerda Int β€” bu num o'zgaruvchisi faqat butun son saqlashini bildiradi.

Swiftda 6 ta asosiy data type mavjud:

Data TypeMisolTavsif
Character"s", "a"16-bitli Unicode belgi
String"hello world!"Matn
Int3, -23Butun son
Float2.4, 3.14, -23.2132-bit kasrli son
Double2.42234241241464-bit kasrli son
Booltrue, falseMantiqiy qiymat

Character

Character turi bitta belgi saqlaydi.

Swift
Character turi
// Character turidagi o'zgaruvchi yaratish var letter: Character = "s" print(letter) var symbol: Character = "@" print(symbol) var digit: Character = "9" print(digit)

Bu misolda letter β€” Character turidagi o'zgaruvchi va unga "s" qiymati berilgan.

Agar Character turiga "abc" kabi bir nechta belgi bersangiz, xato chiqadi.

String

String turi matnlarni saqlash uchun ishlatiladi.

Swift
String turi
// String turidagi o'zgaruvchi yaratish var language: String = "swift" print(language) var message = "Bu Swift tili" print(message) var greeting: String = "Salom, dunyo!" print(greeting)

Bu yerda language β€” String turidagi o'zgaruvchi.

Integer

Int turi kasrsiz butun sonlarni saqlaydi.

Swift
Int turi
// integer turidagi o'zgaruvchi var number: Int = 3 print(number) var age: Int = 25 print("Yosh:", age) var temperature: Int = -10 print("Harorat:", temperature)

Int turlarining asosiy xususiyatlari

  • Hajmi: platformaga bog'liq
  • Oraliq (Range):
    • 32-bit: -2Β³ΒΉ dan 2Β³ΒΉ-1 gacha
    • 64-bit: -2⁢³ dan 2⁢³-1 gacha

Int variantlari

VariantHajmiOraliq
Int88 bit-128 to 127
Int1616 bit-2¹⁡ to 2¹⁡-1
Int3232 bit-2Β³ΒΉ to 2Β³ΒΉ-1
Int6464 bit-2⁢³ to 2⁢³-1
UIntPlatformaga bog'liq0 dan 2³² (32-bit) yoki 2⁢⁴ (64-bit) gacha
Swift
Int variantlari
let int8: Int8 = 127 let int16: Int16 = 32767 let int32: Int32 = 2147483647 print("Int8 max:", int8) print("Int16 max:", int16) print("Int32 max:", int32) let uint8: UInt8 = 255 print("UInt8 max:", uint8)

Boolean

Bool turi mantiqiy qiymatlarni saqlaydi: true yoki false.

Swift
Bool turi
// boolean turidagi o'zgaruvchilar let passCheck: Bool = true print(passCheck) let failCheck: Bool = false print(failCheck) let isStudent = true print("Talaba:", isStudent)

Booleans ko'pincha if-else bilan ishlatiladi.

Swift
Bool if-else bilan
let isSwiftFun: Bool = true if isSwiftFun { print("Swift juda qiziq!") } else { print("Boshqa til tanlang") } let score = 85 let isPassed = score >= 60 if isPassed { print("Test topshirdingiz!") } else { print("Yana urinib ko'ring") }

Float

Float β€” kasrli son saqlaydi (32-bit).

Swift
Float turi
// float turidagi o'zgaruvchi let piValue: Float = 3.14 print(piValue) let price: Float = 19.99 print("Narx:", price) let weight: Float = 65.5 print("Vazn:", weight, "kg")

Float xususiyatlari

  • Hajmi: 32-bit
  • Oraliq: 1.2 Γ— 10⁻³⁸ dan 3.4 Γ— 10³⁸ gacha
  • Aniqlik: 6 ta kasr o'rnigacha

Double

Double ham kasrli sonlar uchun ishlatiladi, ammo aniqroq (15 ta kasr o'rni).

Swift
Double turi
// double turidagi o'zgaruvchi let latitude: Double = 27.7007697012432 print(latitude) let pi: Double = 3.141592653589793 print("Pi:", pi) let distance: Double = 384400.5 print("Masofa:", distance, "km")

Double xususiyatlari

  • Hajmi: 64-bit
  • Oraliq: 2.3 Γ— 10⁻³⁰⁸ dan 1.7 Γ— 10³⁰⁸ gacha
  • Aniqlik: 15 ta kasr o'rnigacha

Float va Double farqi

Swift
Float vs Double
let floatNum: Float = 3.141592653589793 let doubleNum: Double = 3.141592653589793 print("Float:", floatNum) // 6 ta kasr print("Double:", doubleNum) // 15 ta kasr // Float uchun let f1: Float = 1.23456789 print("Float aniqlik:", f1) // Double uchun let d1: Double = 1.23456789012345 print("Double aniqlik:", d1)
  • Agar raqam juda aniq bo'lishi kerak bo'lsa β€” Double ishlating.
  • Aniqlik kam bo'lsa yoki yengil hisoblashlar uchun β€” Float ishlating.

πŸ“š Masalalarni qanday yechish kerak?

βœ… Namuna: 1-masala yechimi

Masala: 25 butun sonini qaytaring.

Bosqichma-bosqich yechim:

1-qadam: Masalani tushunish

Bizdan Int turidagi 25 qiymatini qaytarish so'ralyapti.

2-qadam: Starter kodni ko'rish

func solve() -> Int {
    // Int turidagi qiymat qaytaring
    return 0
}

-> Int β€” bu funksiya Int (butun son) qaytarishini bildiradi.

3-qadam: Yechimni yozish

return dan keyin 25 raqamini yozamiz:

Swift
1-masala yechimi
func solve() -> Int { return 25 } // Tekshirish print(solve()) print("Tur:", type(of: solve()))

Natija: 25 βœ…

Izoh:

  • return 25 β€” 25 butun sonini qaytaradi
  • -> Int β€” funksiya Int turini qaytaradi

Xulosa

  • Character β€” bitta belgi
  • String β€” matn (ko'p belgi)
  • Int β€” butun son
  • Float β€” kasrli son (6 ta aniqlik)
  • Double β€” kasrli son (15 ta aniqlik)
  • Bool β€” true yoki false

Keyingi mavzuda Characters va Strings ni batafsil o'rganamiz.

Buy mea coffee