tatasusunan golang untuk dipetakan

WBOY
Lepaskan: 2023-05-15 09:32:06
asal
1087 orang telah melayarinya

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
}
Salin selepas log masuk

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},
}
Salin selepas log masuk

Kemudian, kami mentakrifkan jenis peta, menggunakan nama pelajar sebagai kunci dan gred pelajar sebagai nilai:

scores := make(map[string]int)
Salin selepas log masuk

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
}
Salin selepas log masuk

Akhirnya, kita boleh mencari gred yang sepadan dalam markah berdasarkan nama pelajar:

score, ok := scores["张三"]
if ok {
    fmt.Printf("张三的成绩为:%d
", score)
} else {
    fmt.Println("未找到张三的成绩")
}
Salin selepas log masuk

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("未找到张三的成绩")
    }
}
Salin selepas log masuk

Output Hasilnya ialah:

张三的成绩为:90
Salin selepas log masuk

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:

  • Dalam bahasa Go, anda boleh menukar tatasusunan kepada jenis peta dengan merentasinya.
  • Jenis pasangan nilai kunci dan objek peta perlu ditakrifkan semasa proses penukaran.
  • Selepas penukaran, anda boleh mencari nilai yang sepadan dengan cepat berdasarkan kunci.

Atas ialah kandungan terperinci tatasusunan golang untuk dipetakan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan