Membuat Salinan Dalam Peta dalam Go
Walaupun anda boleh membuat salinan peta secara manual, ia mungkin lebih mudah untuk menggunakan binaan -fungsi atau perpustakaan.
Terbina Dalam Fungsi
Malangnya, tiada fungsi terbina dalam khusus untuk membuat salinan peta sewenang-wenang dalam Go.
Perpustakaan dan Pakej
import ( "bytes" "encoding/gob" "fmt" ) func main() { ori := map[string]int{ "key": 3, "clef": 5, } // Encode the original map var mod bytes.Buffer enc := gob.NewEncoder(&mod) err := enc.Encode(ori) if err != nil { fmt.Println("Failed to encode map:", err) return } // Decode the encoded map into a new variable (deep copy) var cpy map[string]int dec := gob.NewDecoder(&mod) err = dec.Decode(&cpy) if err != nil { fmt.Println("Failed to decode map:", err) return } // Modify the copied map to demonstrate they are independent cpy["key"] = 2 fmt.Println("Original map:", ori) fmt.Println("Copied map:", cpy) }
Dengan menggunakan salah satu pendekatan ini, anda boleh membuat salinan peta dalam Go dengan mudah.
Atas ialah kandungan terperinci Bagaimana untuk Membuat Salinan Dalam Peta dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!