Sobes.tech
Junior — Middle

Kann man Arrays als Schlüssel in einer Map-Sammlung verwenden?

sobes.tech KI

Antwort von AI

In Go können Schlüssel in der Sammlung map nur Typen sein, die die Vergleichsoperation == unterstützen. Arrays in Go sind elementweise vergleichbar, daher können Arrays fester Länge als Schlüssel verwendet werden.

Beispiel:

package main
import "fmt"

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

Allerdings können Slices ([]int) nicht als Schlüssel verwendet werden, da sie nicht vergleichbar sind. Wenn eine Sammlung mit auf Slices basierenden Schlüsseln benötigt wird, muss man sie in einen String oder einen anderen vergleichbaren Typ umwandeln.