Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Cara mengubah suai peta golang

Cara mengubah suai peta golang

青灯夜游
青灯夜游asal
2022-12-26 09:53:475461semak imbas

Kaedah pengubahsuaian: 1. Gunakan penyataan "map["key"]=value" untuk menambah atau mengemas kini elemen Jika "kunci" wujud, kemas kini elemen tersebut Jika "kunci" tidak wujud elemen. ; 2. Gunakan fungsi delete() untuk memadam pasangan nilai kunci yang ditentukan daripada peta, sintaksnya ialah "padam(peta, nama kunci)"; elemen dalam peta, sintaksnya ialah "var mapname map[keytype]valuetype".

Cara mengubah suai peta golang

Persekitaran pengendalian tutorial ini: sistem Windows 7, GO versi 1.18, komputer Dell G3.

Dalam bahasa Go, peta ialah struktur data khas, koleksi pasangan elemen yang tidak tertib (Pair) sepadan dengan kunci (indeks) dan nilai (nilai), jadi struktur ini juga dipanggil tatasusunan Bersekutu atau kamus ialah struktur ideal yang boleh mencari nilai dengan cepat Jika diberi kunci, nilai yang sepadan boleh ditemui dengan cepat.

peta Struktur data ini juga dipanggil kamus (Python), hash, HashTable, dsb. dalam bahasa pengaturcaraan lain.

Pengenalan peta

[1] Peta, sejenis terbina dalam bahasa Go, yang mengaitkan pasangan nilai kunci Sambungan, kita boleh dapatkan nilai nilai yang sepadan melalui kunci kekunci. Sama seperti koleksi dalam bahasa lain
Cara mengubah suai peta golang

[2] Sintaks asas

var map变量名 map[keytype]valuetype

PS: jenis kunci dan nilai: bool, nombor, rentetan, penunjuk, saluran , dsb. Ia boleh menjadi antara muka, struktur atau tatasusunan yang hanya mengandungi jenis sebelumnya
PS: kunci biasanya jenis int atau rentetan dan nilai biasanya nombor (integer, nombor titik terapung), rentetan, peta, atau struktur
PS: Kunci: kepingan, peta dan fungsi tidak dibenarkan

[3] Kod:

Ciri-ciri peta:

(1) Peta pengumpulan mesti dibuat
sebelum digunakan (2) Nilai kunci peta tidak tertib
(3) Kunci tidak boleh diulang, nilai terakhir akan menggantikan nilai sebelumnya
(4) Nilai boleh diulang

package main
import "fmt"
func main(){
        //定义map变量:
        var a map[int]string
        //只声明map内存是没有分配空间
        //必须通过make函数进行初始化,才会分配空间:
        a = make(map[int]string,10) //map可以存放10个键值对
        //将键值对存入map中:
        a[20095452] = "张三"
        a[20095387] = "李四"
        a[20097291] = "王五"
        a[20095387] = "朱六"
        a[20096699] = "张三"
        //输出集合
        fmt.Println(a)
}

Tiga cara untuk mencipta peta

 package main
import "fmt"
func main(){
        //方式1:
        //定义map变量:
        var a map[int]string
        //只声明map内存是没有分配空间
        //必须通过make函数进行初始化,才会分配空间:
        a = make(map[int]string,10) //map可以存放10个键值对
        //将键值对存入map中:
        a[20095452] = "张三"
        a[20095387] = "李四"
        //输出集合
        fmt.Println(a)
        //方式2:
        b := make(map[int]string)
        b[20095452] = "张三"
        b[20095387] = "李四"
        fmt.Println(b)
        //方式3:
        c := map[int]string{
                20095452 : "张三",
                20098765 : "李四",
        }
        c[20095387] = "王五"
        fmt.Println(c)
}

Tambah , padam, ubah suai dan semak peta

【1】Tambah dan kemas kini operasi:

map[“key”]= value ——》 Jika kunci tidak wujud, ia ditambah, jika kunci wujud, ia diubah suai.

【2】Operasi padam:

delete(map,“key”) , padam ialah fungsi terbina dalam Jika kekunci wujud, nilai kekunci dipadamkan , tiada operasi dilakukan, tetapi Tiada ralat akan dilaporkan

Cara mengubah suai peta golang

【3】Operasi kosong:

(1) Jika kita mahu memadamkan semua kekunci peta, tiada kaedah khas untuk memadamnya sekaligus, anda boleh melintasi kekunci, padam

(2) atau map = make(…) satu persatu, buat yang baharu, biarkan yang asal menjadi sampah, dan dikitar semula oleh gc

[4] Operasi carian:

value, bool = map[key]

value ialah nilai yang dikembalikan, bool ialah sama ada untuk mengembalikan, sama ada benar atau salah

package main
import "fmt"
func main(){
        //定义map
        b := make(map[int]string)
        //增加:
        b[20095452] = "张三"
        b[20095387] = "李四"
        //修改:
        b[20095452] = "王五"
        //删除:
        delete(b,20095387)
        delete(b,20089546)
        fmt.Println(b)
        //查找:
        value,flag := b[200]
        fmt.Println(value)
        fmt.Println(flag)
}

[5] Dapatkan panjang: fungsi len

【6】Traversal: untuk-julat

package main
import "fmt"
func main(){
        //定义map
        b := make(map[int]string)
        //增加:
        b[20095452] = "张三"
        b[20095387] = "李四"
        b[20098833] = "王五"
        //获取长度:
        fmt.Println(len(b))
        //遍历:
        for k,v := range b {
                fmt.Printf("key为:%v value为%v \t",k,v)
        }
        fmt.Println("---------------------------")
        //加深难度:
        a := make(map[string]map[int]string)
        //赋值:
        a["班级1"] = make(map[int]string,3)
        a["班级1"][20096677] = "露露"
        a["班级1"][20098833] = "丽丽"
        a["班级1"][20097722] = "菲菲"
        a["班级2"] = make(map[int]string,3)
        a["班级2"][20089911] = "小明"
        a["班级2"][20085533] = "小龙"
        a["班级2"][20087244] = "小飞"
        for k1,v1:= range a {
                fmt.Println(k1)
                for k2,v2:= range v1{
                        fmt.Printf("学生学号为:%v 学生姓名为%v \t",k2,v2)
                }
                fmt.Println()
        }
}

[Cadangan berkaitan: Pergi tutorial video, Pengajaran pengaturcaraan]

Atas ialah kandungan terperinci Cara mengubah suai peta golang. 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