- Published on
Swiftda Dictionary
- Authors
- Name
- ShoxruxC
- @iOSdasturchi
Swiftda dictionary tartibsiz elementlar to‘plamidir. U elementlarni kalit/qiymat ko‘rinishida saqlaydi. Bu yerda kalitlar har bir qiymat bilan bog‘langan noyob identifikatorlardir.
Keling, bir misol ko‘ramiz.
Agar davlatlar va ularning poytaxtlari haqida ma’lumot saqlamoqchi bo‘lsak, davlat nomlarini kalit, poytaxtlarni esa qiymat sifatida yozishimiz mumkin.
Kalitlar va qiymatlar:
Nepal — Kathmandu
Italy — Rome
England — London
Dictionary yaratish
Quyidagicha dictionary yaratishimiz mumkin:
var capitalCity = ["Nepal": "Kathmandu", "Italy": "Rome", "England": "London"]
print(capitalCity)
Natija:
["Nepal": "Kathmandu", "England": "London", "Italy": "Rome"]
Yuqoridagi misolda biz capitalCity nomli dictionary yaratdik. Bu yerda:
- Kalitlar: "Nepal", "Italy", "England"
- Qiymatlar: "Kathmandu", "Rome", "London"
Kodni ishga tushirganimizda natija tartibi boshqacha bo‘lishi mumkin, chunki dictionary tartibga ega emas.
Bu yerda kalit va qiymatlarning ikkisi ham
Stringturida. Dictionary turli tipdagi kalit va qiymatlarga ham ega bo‘lishi mumkin.
Misol:
Turli tipdagi kalit va qiymatlar bilan:
var numbers = [1: "One", 2: "Two", 3: "Three"]
print(numbers)
Natija:
[3: "Three", 1: "One", 2: "Two"]
Bu misolda kalitlar Int, qiymatlar esa String tipida.
Dictionaryga element qo‘shish
Kengaytirish uchun dictionary nomi bilan [] ishlatiladi.
var capitalCity = ["Nepal": "Kathmandu", "England": "London"]
print("Initial Dictionary: ",capitalCity)
capitalCity["Japan"] = "Tokyo"
print("Updated Dictionary: ",capitalCity)
print(capitalCity["Japan"])
Natija:
Initial Dictionary: ["Nepal": "Kathmandu", "England": "London"]
Updated Dictionary: ["Nepal": "Kathmandu", "England": "London", "Japan": "Tokyo"]
Bu yerda:
capitalCity["Japan"] = "Tokyo"
yangi kalit/qiymat juftligini qo‘shdi.
Dictionary qiymatini o‘zgartirish
Xuddi shu usul bilan qiymatni ham o‘zgartirish mumkin.
var studentID = [111: "Eric", 112: "Kyle", 113: "Butters"]
print("Initial Dictionary: ", studentID)
studentID[112] = "Stan"
print("Updated Dictionary: ", studentID)
Natija:
Initial Dictionary: [111: "Eric", 113: "Butters", 112: "Kyle"]
Updated Dictionary: [111: "Eric", 113: "Butters", 112: "Stan"]
112 kalitidagi "Kyle" qiymati "Stan"ga o‘zgardi.
Dictionarydan elementlarni olish
Swiftda dictionary kalitlari va qiymatlari mustaqil olinishi mumkin.
1. Faqat kalitlarni olish
var cities = ["Nepal":"Kathmandu", "China":"Beijing", "Japan":"Tokyo"]
print("Dictionary: ", cities)
var countryName = Array(cities.keys)
print("Keys: ", countryName)
Natija:
Dictionary: ["Nepal": "Kathmandu", "Japan": "Tokyo", "China": "Beijing"]
Keys: ["Nepal", "Japan", "China"]
2. Faqat qiymatlarni olish
var cities = ["Nepal":"Kathmandu", "China":"Beijing", "Japan":"Tokyo"]
print("Dictionary: ", cities)
var countryName = Array(cities.values)
print("Values: ", countryName)
Natija:
Dictionary: ["Nepal": "Kathmandu", "China": "Beijing", "Japan": "Tokyo"]
Values: ["Kathmandu", "Beijing", "Tokyo"]
Dictionarydan element o‘chirish
removeValue() metodidan foydalaniladi.
var studentID = [111: "Eric", 112: "Kyle", 113: "Butters"]
print("Initial Dictionary: ", studentID)
var removedValue = studentID.removeValue(forKey: 112)
print("Dictionary After removeValue(): ", studentID)
Natija:
Initial Dictionary: [113: "Butters", 111: "Eric", 112: "Kyle"]
Dictionary After removeValue(): [111: "Eric", 113: "Butters"]
removeValue(forKey: 112) — 112 kalitiga tegishli elementni o‘chiradi.
Eslatma: Barcha elementlarni o‘chirish uchun removeAll() ishlatiladi.
Dictionaryning boshqa metodlari
sorted() — elementlarni tartiblaydi shuffled() — elementlar tartibini aralashtiradi contains() — ma’lum element mavjudligini tekshiradi randomElement() — tasodifiy element qaytaradi firstIndex() — berilgan elementning indeksini qaytaradi
Dictionary bo‘ylab iteratsiya qilish
var classification = ["Fruit": "Apple", "Vegetable": "Broccoli", "Beverage": "Milk"]
print("Keys: Values")
for (key,value) in classification {
print("\(key): \(value)")
}
Natija:
Keys: Values
Vegetable: Broccoli
Beverage: Milk
Fruit: Apple
Dictionary elementlar sonini topish
var studentID = [111: "Eric", 112: "Kyle", 113: "Butters"]
print(studentID.count)
Natija:
3
Bo‘sh Dictionary yaratish
var emptyDictionary = [Int: String]()
print("Empty Dictionary: ",emptyDictionary)
Natija:
Empty Dictionary: [:]
Bu yerda:
[Int: String]()
- Int — kalitlar integer bo‘lishini
- String — qiymatlar string bo‘lishini bildiradi
Bo‘sh dictionary yaratishda ma’lumot turi majburiy ko‘rsatiladi.