Junior — Middle
Lze pole použít jako klíče v kolekci Map?
sobes.tech AI
Odpověď od AI
V Go mohou být klíče v kolekci map pouze typy, které podporují operaci porovnání ==. Pole v Go jsou porovnatelné po prvcích, takže pevně dané délky pole lze použít jako klíče.
Příklad:
package main
import "fmt"
func main() {
m := make(map[[3]int]string)
key := [3]int{1, 2, 3}
m[key] = "příklad"
fmt.Println(m[key]) // Vypíše: příklad
}
Nicméně, slices ([]int) nelze použít jako klíče, protože nejsou porovnatelné. Pokud potřebujete kolekci s klíči založenými na slices, musíte je převést na řetězec nebo jiný porovnatelný typ.