Junior
Lug'at uchun kalit va qiymat nima bo'lishi mumkin?
sobes.tech AI
AIdan javob
iOS (Swift) da Dictionary — bu juftlar "kalit-qiymat" to'plamidir.
-
Kalit har qanday
Hashableprotokoliga mos keladigan tur bo'lishi mumkin. Bu shuni anglatadiki, kalit tezkor qidirish uchun hashlanishi mumkin bo'lishi kerak. Masalan,String,Int,UUIDva boshqa standart turlar. -
Qiymat har qanday tur bo'lishi mumkin, jumladan, tuzilmalar, sinflar, primitivlar yoki hatto boshqa to'plamlar.
Misol:
var dict: [String: Int] = ["apple": 3, "banana": 5]
// Kalit — String (hashlanadigan), qiymat — Int
// Shuningdek, `Hashable` ga mos keladigan maxsus turlarni ham ishlatish mumkin:
struct User: Hashable {
let id: Int
let name: String
}
var userScores: [User: Double] = [:]
Muhim: kalitlar o'zgarmas (immutable) va hashlanadigan bo'lishi kerak, shunda lug'at to'g'ri ishlaydi.