Dalam bahasa Go, kadangkala perlu menukar tatasusunan kepada jenis peta Artikel ini akan memperkenalkan cara melaksanakan fungsi ini.
Tatasusunan ialah satu set jenis data yang disusun dalam susunan tertentu, manakala peta ialah jenis data yang disimpan dalam bentuk pasangan nilai kunci. Tatasusunan boleh mengakses elemen menggunakan subskrip, manakala peta memerlukan kunci untuk mengakses nilai. Dalam sesetengah senario, kita perlu menukar tatasusunan kepada jenis peta untuk mengakses elemen dengan lebih mudah.
Sebagai contoh, kami mempunyai tatasusunan panjang 5, yang menyimpan nama dan gred sepadan 5 pelajar. Kami berharap dapat menukarnya kepada jenis peta supaya kami dapat mencari gred yang sepadan dengan cepat berdasarkan nama pelajar.
Pertama, kita perlu menentukan jenis untuk menyimpan nama dan gred pelajar:
type Student struct { Name string Score int }
Seterusnya, kami mencipta tatasusunan panjang 5 untuk menyimpan nama dan gred 5 pelajar:
students := [5]Student{ {Name: "张三", Score: 90}, {Name: "李四", Score: 85}, {Name: "王五", Score: 78}, {Name: "赵六", Score: 92}, {Name: "钱七", Score: 88}, }
Kemudian, kami mentakrifkan jenis peta, menggunakan nama pelajar sebagai kunci dan gred pelajar sebagai nilai:
scores := make(map[string]int)
Kemudian, kami melelang melalui setiap elemen dalam tatasusunan, menggunakan pelajar nama sebagai kunci, dan Gred pelajar disimpan sebagai nilai dalam markah:
for _, student := range students { scores[student.Name] = student.Score }
Akhirnya, kita boleh mencari gred yang sepadan dalam markah berdasarkan nama pelajar:
score, ok := scores["张三"] if ok { fmt.Printf("张三的成绩为:%d ", score) } else { fmt.Println("未找到张三的成绩") }
Yang lengkap kod adalah seperti berikut:
package main import "fmt" type Student struct { Name string Score int } func main() { students := [5]Student{ {Name: "张三", Score: 90}, {Name: "李四", Score: 85}, {Name: "王五", Score: 78}, {Name: "赵六", Score: 92}, {Name: "钱七", Score: 88}, } scores := make(map[string]int) for _, student := range students { scores[student.Name] = student.Score } score, ok := scores["张三"] if ok { fmt.Printf("张三的成绩为:%d ", score) } else { fmt.Println("未找到张三的成绩") } }
Output Hasilnya ialah:
张三的成绩为:90
Melalui contoh kod di atas, kita dapat melihat bahawa menukar tatasusunan kepada peta adalah sangat mudah. Anda hanya perlu menentukan jenis pasangan nilai kunci, mencipta objek peta, melintasi tatasusunan dan mengisi elemen ke dalam peta.
Ringkasan:
Atas ialah kandungan terperinci tatasusunan golang untuk dipetakan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!