Junior — Middle
Welke gegevenstypen zijn geschikt voor gebruik als sleutels in een Map-structuur?
sobes.tech AI
Antwoord van AI
In Go kunnen de sleutels in een map-structuur alleen van typen zijn die de vergelijking op gelijkheid (== en !=) ondersteunen. Dit komt doordat het vergelijken van sleutels nodig is om een waarde te zoeken.
Geschikte sleuteltypen:
- Eenvoudige typen:
int,float64,string,bool, enz. - Pointers
- Structuren, als al hun velden vergelijkbaar zijn
- Arrays, als hun elementen vergelijkbaar zijn
Niet te gebruiken als sleutels:
- Slices (
slice) - Maps (
map) - Functies
Voorbeeld van gebruik:
m := make(map[string]int)
m["apple"] = 5
m["banana"] = 3
fmt.Println(m["apple"]) // 5
Als je probeert een slice als sleutel te gebruiken, geeft de compiler een fout.