Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menggunakan jenis pemetaan dalam bahasa Go?

Bagaimana untuk menggunakan jenis pemetaan dalam bahasa Go?

PHPz
PHPzasal
2024-03-23 10:12:04602semak imbas

Bagaimana untuk menggunakan jenis pemetaan dalam bahasa Go?

Bagaimana untuk menggunakan jenis pemetaan dalam bahasa Go?

Dalam bahasa Go, peta ialah struktur data terbina dalam yang digunakan untuk menyimpan pasangan nilai kunci. Peta membolehkan mendapatkan semula nilai dengan cepat dengan kunci, serupa dengan kamus atau jadual cincang dalam bahasa lain. Dalam artikel ini, kami akan memperkenalkan konsep asas jenis peta dalam bahasa Go dan cara menggunakan peta untuk menyimpan dan mendapatkan data.

Buat peta

Untuk mencipta peta, anda boleh menggunakan fungsi make dalam bahasa Go untuk memulakan peta kosong dan menentukan jenis kunci dan nilai. Berikut ialah contoh mudah: make函数来初始化一个空的映射,并指定键和值的类型。下面是一个简单的示例:

package main

import "fmt"

func main() {
    // 创建一个映射,键是字符串类型,值是整数类型
    m := make(map[string]int)
    
    // 添加键值对到映射中
    m["apple"] = 10
    m["banana"] = 5
    
    fmt.Println(m) // 输出map[apple:10 banana:5]
}

在上面的示例中,我们创建了一个映射m,键的类型是字符串,值的类型是整数。然后,我们向映射中添加了两组键值对,分别是apple:10banana:5。最后,使用fmt.Println函数输出整个映射。

访问和修改映射中的元素

要访问映射中的元素,可以通过键来索引映射。如果键存在,则会返回对应的值;如果键不存在,则会返回值类型的零值。示例如下:

package main

import "fmt"

func main() {
    m := make(map[string]int)
    
    m["apple"] = 10
    m["banana"] = 5

    // 访问映射中的元素
    fmt.Println("apple:", m["apple"]) // 输出:apple: 10
    fmt.Println("orange:", m["orange"]) // 输出:orange: 0
}

在上面的示例中,我们访问了映射中的appleorange键的值,如果键存在,则打印对应的值;如果键不存在,则打印值类型的零值。

如果需要修改映射中的元素,只需通过键重新赋值即可。示例如下:

package main

import "fmt"

func main() {
    m := make(map[string]int)
    
    m["apple"] = 10
    fmt.Println("apple:", m["apple"]) // 输出:apple: 10
    
    m["apple"] = 20 // 修改键值对
    fmt.Println("apple:", m["apple"]) // 输出:apple: 20
}

在上面的示例中,我们将映射中apple键的值从10修改为20,并输出修改后的结果。

删除映射中的元素

可以使用delete函数来删除映射中的元素。示例如下:

package main

import "fmt"

func main() {
    m := make(map[string]int)
    
    m["apple"] = 10
    fmt.Println("apple:", m["apple"]) // 输出:apple: 10
    
    delete(m, "apple") // 删除键值对
    fmt.Println("apple:", m["apple"]) // 输出:apple: 0
}

在上面的示例中,我们使用delete函数删除了映射中的apple键值对,然后访问apple键时会返回值类型的零值。

迭代映射

可以使用for range语句来迭代映射中的键值对。示例如下:

package main

import "fmt"

func main() {
    m := make(map[string]int)
    
    m["apple"] = 10
    m["banana"] = 5

    // 遍历映射
    for k, v := range m {
        fmt.Println(k, ":", v)
    }
}

在上面的示例中,我们使用for range语句遍历了映射mrrreee

Dalam contoh di atas, kami mencipta peta m dengan kekunci rentetan jenis dan nilai jenis integer. Kemudian, kami menambah dua set pasangan nilai kunci pada peta, iaitu apple:10 dan banana:5. Akhir sekali, gunakan fungsi fmt.Println untuk mengeluarkan keseluruhan peta.

Akses dan ubah suai elemen dalam peta

Untuk mengakses elemen dalam peta, peta boleh diindeks dengan kekunci. Jika kunci wujud, nilai yang sepadan akan dikembalikan jika kunci tidak wujud, nilai sifar jenis nilai akan dikembalikan. Contohnya adalah seperti berikut:
    rrreee
  1. Dalam contoh di atas, kami mengakses nilai kekunci apple dan oren dalam peta. Jika kunci itu wujud, cetak nilai yang sepadan; jika Jika kunci tidak wujud, nilai sifar jenis nilai dicetak.
  2. Jika anda perlu mengubah suai elemen dalam peta, hanya tetapkan semula dengan kunci. Contohnya adalah seperti berikut:
  3. rrreee
  4. Dalam contoh di atas, kami mengubah suai nilai kekunci apple dalam peta daripada 10 hingga 20 dan mengeluarkan hasil yang diubah suai.
Padam elemen dalam peta

Anda boleh menggunakan fungsi delete untuk memadamkan elemen dalam peta. Contohnya adalah seperti berikut: 🎜rrreee🎜Dalam contoh di atas, kami menggunakan fungsi delete untuk memadamkan pasangan nilai kunci apple dalam peta, dan kemudian mengakses apple Key akan mengembalikan nilai sifar jenis nilai. 🎜🎜Lelaran peta🎜🎜Anda boleh menggunakan pernyataan untuk julat untuk mengulang pasangan nilai kunci dalam peta. Contohnya adalah seperti berikut: 🎜rrreee🎜Dalam contoh di atas, kami menggunakan pernyataan untuk julat untuk merentasi semua pasangan nilai kunci dalam peta m dan mengeluarkan kekunci dan nilai mengikut urutan. 🎜🎜Nota🎜🎜Apabila menggunakan pemetaan, anda perlu memberi perhatian kepada perkara berikut: 🎜🎜🎜Peta ialah jenis rujukan dan menyimpan rujukan kepada pasangan nilai kunci, jadi menghantar peta apabila memanggil fungsi tidak akan menghasilkan salinan. 🎜🎜Kunci dalam peta mestilah jenis yang setanding, seperti jenis asas, jenis penunjuk, jenis tatasusunan, jenis struktur, dsb. 🎜🎜Nilai dalam peta boleh terdiri daripada sebarang jenis, termasuk fungsi, kepingan, peta, dsb. 🎜🎜🎜Ringkasan: Artikel ini memperkenalkan cara membuat, mengakses, mengubah suai, memadam dan mengulang jenis peta dalam bahasa Go. Melalui pengenalan operasi asas dan langkah berjaga-jaga pemetaan, pembaca boleh lebih memahami dan menggunakan struktur data pemetaan dalam bahasa Go. Semoga artikel ini bermanfaat kepada anda. 🎜

Atas ialah kandungan terperinci Bagaimana untuk menggunakan jenis pemetaan dalam bahasa Go?. 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