Sobes.tech
Junior — Middle

È possibile utilizzare array come chiavi in una collezione Map?

sobes.tech AI

Risposta dell'AI

In Go, le chiavi nella collezione map possono essere solo di tipi che supportano l'operazione di confronto ==. Gli array in Go sono confrontabili elemento per elemento, quindi gli array di lunghezza fissa possono essere usati come chiavi.

Esempio:

package main
import "fmt"

func main() {
    m := make(map[[3]int]string)
    key := [3]int{1, 2, 3}
    m[key] = "esempio"
    fmt.Println(m[key]) // Mostrerà: esempio
}

Tuttavia, gli slice ([]int) non possono essere usati come chiavi perché non sono confrontabili. Se hai bisogno di una collezione con chiavi basate su slice, devi convertirli in stringa o in un altro tipo confrontabile.