Menggunakan Slices dan Array sebagai Kekunci Peta
Dalam Go, kunci peta mesti melaksanakan pengendali == dan != untuk membandingkan kesamarataan mereka. Slices tidak melaksanakan operator ini, jadi kepingan tidak boleh digunakan secara langsung sebagai kunci peta. Walau bagaimanapun, tatasusunan boleh digunakan sebagai kunci peta kerana ia melaksanakan pengendali yang diperlukan.
Menggunakan Tatasusunan sebagai Kekunci Peta
Untuk menggunakan tatasusunan sebagai kunci peta, anda boleh mengisytiharkan peta menggunakan jenis tatasusunan sebagai jenis kunci. Contohnya:
package main import "fmt" func main() { m := make(map[[2]int]bool) m[[2]int{1, 2}] = false fmt.Printf("%v", m) }
Peta ini mempunyai jenis utama [2]int, iaitu tatasusunan dua integer. Jenis nilai peta ialah bool.
Menggunakan Slices dengan Menukar kepada Rentetan
Jika anda perlu menggunakan kepingan sebagai kunci peta, anda boleh menukar kepingan kepada rentetan dan gunakan rentetan sebagai kunci. Contohnya:
package main import ( "fmt" "strconv" ) func main() { m := make(map[string]bool) m[strconv.Itoa([]string{"a", "b"})] = false fmt.Printf("%v", m) }
Peta ini mempunyai jenis rentetan utama, yang merupakan perwakilan rentetan bagi hirisan rentetan. Jenis nilai peta ialah bool.
Atas ialah kandungan terperinci Bolehkah Slice Digunakan sebagai Kekunci Peta dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!