Sobes.tech
Junior — Middle

შეგიძლიათ გამოიყენოთ თქვენი საკუთარი მონაცემთა ტიპი სიტყვარის ან ჰეშ-ცხრილის გასაღებად?

sobes.tech AI

პასუხი AI-სგან

Swift-ში თქვენ შეგიძლიათ გამოიყენოთ თქვენი საკუთარი მონაცემთა ტიპები როგორც გასაღებები ლექსიკონში (Dictionary), მაგრამ ამ შემთხვევაში, ტიპი უნდა შეესაბამებოდეს Hashable პროტოკოლს. ეს ნიშნავს, რომ თქვენი ტიპი უნდა იყოს capable of calculating a hash value and correctly implementing equality comparison.

მაგალითი:

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

var dict: [Person: String] = [:]
dict[Person(id: 1, name: "Иван")] = "განვითარებელი"

თუ თქვენი ტიპი არ შეესაბამება Hashable-ს, მას ვერ გამოიყენებთ როგორც გასაღებს ლექსიკონში.