GO語言 對map型別的理解

2021-09-26 05:30:56 字數 874 閱讀 9754

package main

import "fmt"

type personinfo struct

func main()

persondb["1"] = personinfo

person, _ := persondb["12345"]

fmt.println(persondb,"*****====",person)

//變數宣告

// mymap 是宣告的map變數名 string 是鍵的型別 personiofo 是其中存放的值型別

var mymap map[string] personinfo

fmt.println(mymap)

//建立

//我們可以使用內建函式 make() 來建立乙個新 map

//mymap = make(map[string] personinfo)

//建立並初始化map的**如下:

mymap = map[string] personinfo,

}//取值

fmt.println(mymap["1234"].id)

//3. 元素賦值

//賦值過程非常簡單明瞭,就是將鍵和值用下面的方式對應起來即可

//mymap["1234"] = personinfo

//要從map中查詢乙個特定的鍵,可以通過下面的**來實現:

value, ok := mymap["12"]

if ok else

//判斷是否成功找到特定的鍵,不需要檢查取到的值是否為nil,只需檢視第二個返回值ok,

//這讓表意清晰很多。配合:=操作符,讓你的**沒有多餘成分,看起來非常清晰易懂。

}

GO語言內建型別map

go語言中鍵不一定只能是 string 型別。所有可比較的型別,如 boolean,interger,float,complex,string 等,都可以作為鍵 go語言中的map是hash map 是無序的 第一種 這種空的 nil var mapname map keytype valuetyp...

go語言對結構體 map和切片進行json化

getjosn.py import fmt encoding json getjosn.py type teacher structgetjosn.py func structteacher 進行結構體的處理,並返回json後的資料和錯誤 data err json.marshal teacher1...

GO語言學習系列七 GO的map型別

map的結構就是key與value的形式,但它儲存是無序的,它是引用型別,其實在某種程度上面說,map其實可以歸類為陣列,相當於是在陣列的基礎上做了一些擴充套件,實現某些相應的功能 var map變數 map key的型別 value的型別 map變數 map key的型別 value的型別 例 v...