Sobes.tech
Junior — Middle

Czy można używać tablic jako kluczy w kolekcji Map?

sobes.tech AI

Odpowiedź od AI

W Go, klucze w kolekcji map mogą być tylko typami obsługującymi operację porównania ==. Tablice w Go są porównywalne element po elemencie, więc tablice o stałej długości można używać jako kluczy.

Przykład:

package main
import "fmt"

func main() {
    m := make(map[[3]int]string)
    key := [3]int{1, 2, 3}
    m[key] = "przykład"
    fmt.Println(m[key]) // Wyświetli: przykład
}

Jednakże, slices ([]int) nie mogą być używane jako klucze, ponieważ nie są porównywalne. Jeśli potrzebujesz kolekcji z kluczami opartymi na slices, musisz je przekonwertować na string lub inny porównywalny typ.