Junior — Middle
É possível usar arrays como chaves numa coleção Map?
sobes.tech IA
Resposta da IA
No Go, as chaves na coleção map podem ser apenas tipos que suportam a operação de comparação ==. Os arrays em Go são comparáveis elemento por elemento, portanto arrays de comprimento fixo podem ser usados como chaves.
Exemplo:
package main
import "fmt"
func main() {
m := make(map[[3]int]string)
key := [3]int{1, 2, 3}
m[key] = "exemplo"
fmt.Println(m[key]) // Vai imprimir: exemplo
}
No entanto, slices ([]int) não podem ser usados como chaves, pois não são comparáveis. Se precisar de uma coleção com chaves baseadas em slices, deve convertê-los para string ou outro tipo comparável.