Junior — Middle
Vai masīvus var izmantot kā atslēgas Map kolekcijā?
sobes.tech AI
Atbilde no AI
Go valodā atslēgas kolekcijā map var būt tikai tie tipi, kas atbalsta salīdzināšanas operāciju ==. Masīvi Go valodā ir salīdzināmi elementu pa elementam, tāpēc fiksēta garuma masīvi var tikt izmantoti kā atslēgas.
Piemērs:
package main
import "fmt"
func main() {
m := make(map[[3]int]string)
key := [3]int{1, 2, 3}
m[key] = "piemērs"
fmt.Println(m[key]) // Izvadīs: piemērs
}
Tomēr, slices ([]int) nevar izmantot kā atslēgas, jo tie nav salīdzināmi. Ja jums ir nepieciešama kolekcija ar slices balstītām atslēgām, tās jākonvertē uz virkni vai citu salīdzināmu tipu.