Nyahmarshal JSON ke dalam Peta
Soalan ini menangani cabaran memuatkan data JSON ke dalam peta Go. Khususnya, fail JSON ringkas yang mengandungi tatasusunan rentetan disediakan, dan matlamatnya adalah untuk menyahmarshal senarai buah-buahan ke dalam peta dengan kunci rentetan dan nilai{} antara muka. Soalan itu juga bertanya sama ada terdapat cara yang cekap untuk mengelak daripada menggunakan gelung untuk memasukkan elemen ke dalam peta.
Untuk menjawab soalan ini, kami boleh memanfaatkan pakej pengekodan/json Go yang berkuasa. Dengan menyahmarshaling data JSON terus ke peta[rentetan][]rentetan, kami boleh memintas keperluan untuk lelaran dan sisipan manual:
<code class="go">package main import "fmt" import "encoding/json" func main() { src_json := []byte(`{"fruits":["apple","banana","cherry","date"]}`) var m map[string][]string err := json.Unmarshal(src_json, &m) if err != nil { panic(err) } fmt.Printf("%v", m["fruits"][0]) //apple }</code>
Kod ini dengan cekap menukarkan JSON kepada peta yang mempunyai kunci "buah-buahan " peta ke senarai rentetan. Ia mengelakkan gelung dan sisipan manual, menjadikannya ringkas dan berprestasi. Sebagai alternatif, anda juga boleh menggunakan map[string][]interface{} sebagai jenis sasaran jika anda lebih suka mengekalkan nilai sebagai antara muka generik.
Atas ialah kandungan terperinci Bagaimana untuk Menyahmarshal JSON ke dalam Peta Go tanpa Gelung?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!