Menggunakan Structs untuk Kekunci Komposit dalam Peta Go
Dalam Go, kunci komposit dalam peta cincang membenarkan penggabungan berbilang nilai untuk membentuk kunci unik untuk peta itu. Tidak seperti kunci komposit dalam pangkalan data, ini digunakan untuk tujuan pengiraan.
Untuk menyimpan nilai pengiraan pow(x, y) dalam jadual cincang, anda boleh mentakrifkan kunci komposit menggunakan struct:
type Key struct { X, Y int }
Struktur ini menggabungkan nilai x dan y untuk mencipta kunci. Anda boleh menggunakan kunci ini dalam peta seperti berikut:
m := map[Key]int{} m[Key{2, 2}] = 4 m[Key{2, 3}] = 8 fmt.Println("2^2 =", m[Key{2, 2}]) fmt.Println("2^3 =", m[Key{2, 3}])
Output:
2^2 = 4 2^3 = 8
Struktur digunakan sebagai kunci kerana ia menyediakan cara mudah untuk mewakili berbilang nilai sebagai satu unit . Mereka memastikan operator perbandingan yang betul (== dan !=) ditakrifkan, membenarkan pengambilan kunci yang cekap daripada peta.
Menggunakan penunjuk sebagai jenis kunci tidak disyorkan, kerana perbandingan penunjuk hanya menyemak alamat memori dan bukannya nilai sebenar . Tatasusunan juga boleh digunakan sebagai jenis utama, tetapi struktur menawarkan lebih fleksibiliti.
Atas ialah kandungan terperinci Bagaimanakah saya boleh menggunakan struct dengan berkesan untuk mencipta kunci komposit dalam peta Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!