Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk menyimpan pelbagai jenis nilai dalam peta Go?
jenis nilai dalam satu nilai peta tunggal. Walau bagaimanapun, anda boleh mencapai kesan menyimpan pelbagai jenis nilai dengan menggunakan teknik yang dipanggil antara muka {} . Jenis , juga dikenali sebagai antara muka kosong, boleh memegang nilai -nilai mana -mana jenis. Ini membolehkan anda menyimpan pelbagai jenis data dalam ruang nilai peta anda, tetapi ia datang dengan perdagangan yang memerlukan penegasan jenis yang jelas apabila mengambil nilai-nilai. Ingat, sementara ini membolehkan fleksibiliti, ia juga memerlukan pengendalian yang teliti semasa pengambilan semula, seperti yang dibincangkan di bahagian seterusnya. Seperti yang dinyatakan sebelum ini, nilai -nilai dalam peta Go mestilah semua jenis yang sama. Percubaan untuk memberikan nilai -nilai jenis yang berbeza ke kekunci peta yang sama akan mengakibatkan ralat kompilasi. Penyelesaian, seperti yang ditunjukkan di atas, adalah menggunakan jenis , yang bertindak sebagai bekas untuk sebarang jenis. Ini membolehkan anda menyimpan pelbagai jenis data interface{}
dalam jenis
, tetapi tidak mengubah sekatan asas bahawa semua nilai dalam peta mestilah
jenis yang sama<code class="go">package main import "fmt" func main() { myMap := make(map[string]interface{}) myMap["name"] = "John Doe" myMap["age"] = 30 myMap["active"] = true myMap["height"] = 1.85 fmt.Println(myMap) }</code>- dalam kes ini, jenis
Pernyataan untuk mengambil semula dan bekerja dengan nilai -nilai yang disimpan dengan selamat. Taipkan pernyataan semak jika nilai antara muka memegang nilai jenis tertentu dan, jika ya, tukarnya ke jenis tersebut. Gagal melakukan penegasan jenis sebelum menggunakan nilai akan menghasilkan panik runtime. Pembolehubah interface{}
menunjukkan sama ada penegasan itu berjaya. Sentiasa periksa
Atas ialah kandungan terperinci Bagaimana untuk menyimpan pelbagai jenis nilai dalam peta Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!