Senior
Ko vari pastāstīt par kartēm Go valodā?
sobes.tech AI
Atbilde no AI
Go valodā karte ir iebūvēts datu tips, kas īsteno sasaistīto masīvu vai vārdnīcu, kur atslēgas ir saistītas ar vērtībām.
Go kartes īpašības:
- Atslēgas un vērtības ir noteiktiem tipiem, piemēram,
map[string]int— atslēgas ir virknes, vērtības ir veseli skaitļi. - Karte tiek inicializēta ar funkciju
make, piemēram,m := make(map[string]int). - Pieeja elementiem ir ar
m[key]. - Ja atslēga nepastāv, tiek atgriezta vērtības nullvērtība.
- Atslēgas esamību var pārbaudīt ar otro atgriešanas vērtību:
val, ok := m[key]. - Kartes nav sakārtotas, pārbaudes secība ir nejauša.
- Kartes nav drošas daudzvītņu vidē, paralēlai piekļuvei nepieciešama sinhronizācija.
Piemērs:
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)
}
// Atslēgas dzēšana
delete(m, "banana")
}