Sobes.tech
Junior — Middle

Оё мумкин аст навъи маълумоти худро ҳамчун калид барои луғат ё ҷадвали хеш истифода бурд?

sobes.tech AI

Ҷавоб аз AI

Дар Swift, шумо метавонед намудҳои хоси маълумотро ҳамчун калидҳо барои луғат (Dictionary) истифода баред, аммо дар ин ҳолат, намуд бояд протоколи Hashable-ро мувофиқ кунад. Ин маъно дорад, ки намуд бояд қобилияти ҳисоб кардани арзиши хешро дошта бошад ва муқоисаи баробариро дуруст иҷро кунад.

Масалан:

struct Person: Hashable {
    let id: Int
    let name: String
}

var dict: [Person: String] = [:]
dict[Person(id: 1, name: "Иван")] = "Барномасоз"

Агар намудатон мувофиқ ба Hashable набошад, шумо наметавонед онро ҳамчун калид дар луғат истифода баред.