Sobes.tech
Senior

Ce tipuri de date pot fi utilizate ca cheie pentru o hartă? Poate fi folosit un array ca cheie?

sobes.tech AI

Răspuns de la AI

În Go, cheia pentru mapă poate fi orice tip care suportă operațiunea de comparație == și !=. Aceasta înseamnă că cheile pot fi tipuri de bază (int, string, bool etc.), pointeri, structuri dacă toate câmpurile lor sunt comparabile, precum și interfețe dacă tipul dinamic este comparabil.

Array-urile în Go sunt comparabile dacă elementele lor sunt comparabile, așa că array-urile pot fi folosite ca chei în mapă. De exemplu:

m := make(map[[3]int]string)
 m[[3]int{1, 2, 3}] = "valoare"

Cu toate acestea, slices (felii) nu pot fi folosite ca chei, deoarece nu sunt comparabile (cu excepția comparației cu nil).