Junior — Middle
Dizi dizilerini Map koleksiyonunda anahtar olarak kullanabilir miyiz?
sobes.tech yapay zeka
AI'dan gelen yanıt
Go'da, map koleksiyonundaki anahtarlar yalnızca karşılaştırma işlemini == destekleyen türler olabilir. Go'da diziler, elemanlar bazında karşılaştırılabilir, bu nedenle sabit uzunluktaki diziler anahtar olarak kullanılabilir.
Örnek:
package main
import "fmt"
func main() {
m := make(map[[3]int]string)
key := [3]int{1, 2, 3}
m[key] = "örnek"
fmt.Println(m[key]) // Çıktı: örnek
}
Ancak, dilimler ([]int) anahtar olarak kullanılamaz çünkü karşılaştırılamazlar. Eğer dilimlere dayalı anahtarlar içeren bir koleksiyon gerekiyorsa, bunları string'e veya başka karşılaştırılabilir bir türe dönüştürmelisiniz.