Junior — Middle
რა ტიპის გასაღებებია დაშვებული Map მონაცემთა სტრუქტურაში გამოყენებისთვის?
sobes.tech AI
პასუხი AI-სგან
Go-ში, მონაცემთა სტრუქტურის map გასაღებები უნდა იყოს შედარებადი (comparable) ტიპები, ანუ ისეთი ტიპები, რომლებიც შეიძლება გამოყენებულ იქნას შედარების ოპერაციებში == და !=.
დაშვებული გასაღებების ტიპები მოიცავს:
- პრიმიტიული ტიპები:
int,float64,string,boolდა ა.შ. - პოინტერები
- სტრუქტურები, თუ ყველა მათი ველი შედარებადი არის
- მასივები, თუ მასივის ელემენტები შედარებადი არიან
არასაშვები გასაღებების ტიპები:
- სლაისები (
slice) - რუკები (
map) - ფუნქციები
მაგალითი string ტიპის გასაღებით რუკის გამოყენების:
m := make(map[string]int)
m["apple"] = 5
fmt.Println(m["apple"]) // 5
თუ სცადეთ სლაის როგორც გასაღებს გამოყენება, კომპილატორი შეცდომას გამოიწვევს.