Rumah  >  Artikel  >  pembangunan bahagian belakang  >  tatasusunan golang untuk dipetakan

tatasusunan golang untuk dipetakan

WBOY
WBOYasal
2023-05-15 09:32:061090semak imbas

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:

  • 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!

Kenyataan:
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