Senior
Wat kun je vertellen over de map in Go?
sobes.tech AI
Antwoord van AI
In Go is een map een ingebouwd gegevenstype dat een associatief array of woordenboek implementeert, waarbij sleutels worden gekoppeld aan waarden.
Kenmerken van de map in Go:
- Sleutels en waarden hebben gedefinieerde typen, bijvoorbeeld
map[string]int— sleutels van string, waarden van gehele getallen. - De map wordt geïnitialiseerd met de functie
make, bijvoorbeeld:m := make(map[string]int). - Toegang tot elementen via
m[key]. - Als de sleutel niet bestaat, wordt de nulwaarde van het waarde-type geretourneerd.
- Het bestaan van een sleutel kan worden gecontroleerd met de tweede return-waarde:
val, ok := m[key]. - Maps zijn niet geordend, de volgorde van iteratie is willekeurig.
- Maps zijn niet thread-safe, voor gelijktijdige toegang moet synchronisatie worden gebruikt.
Voorbeeld:
package main
import "fmt"
func main() {
m := make(map[string]int)
m["apple"] = 5
m["banana"] = 3
val, ok := m["apple"]
if ok {
fmt.Println("apple:", val)
}
// Verwijder een sleutel
delete(m, "banana")
}