遇見go語言的第四天 map 結構體

2021-10-11 15:36:45 字數 2293 閱讀 8960

map介紹

map是key-value資料結構,又稱為字段或者關聯陣列,類似其他程式語言的集合,在程式設計中經常使用到。

注意:slice,map還有function不可以,因為這幾個沒法用==來判斷

注意:map宣告是不會分配記憶體的,初始化需要make,分配記憶體後才能賦值和使用

func

main()

fmt.

println

(heroes)

}

例項:存放三個學生資訊,每個學生有name和***資訊

student :=

make

(map

[string

]map

[string

]string

) student[

"stu1"]=

make

(map

[string

]string,2

) student[

"stu1"][

"name"]=

"tom"

student[

"stu1"][

"***"]=

"男" student[

"stu2"]=

make

(map

[string

]string,2

) student[

"stu2"][

"name"]=

"tony"

student[

"stu2"][

"***"]=

"男" student[

"stu3"]=

make

(map

[string

]string,2

) student[

"stu3"][

"name"]=

"mary"

student[

"stu3"][

"***"]=

"女" fmt.

println

(student)

delete

(a,"name1"

) fmt.

println

(a)

val,ok := a[

"name2"

]if ok

else

for k,v :=

range cites

//切片的使用

monsters :=

make([

]map

[string

]string,2

)if monsters[0]

==nil

if monsters[1]

==nil

newmonsters :=

map[

string

]string

monsters =

(monsters,newmonsters)

fmt.

println

(monsters)

type stu struct

func

main()

stu2 := stu

students[

"num1"

]= stu1

students[

"num2"

]= stu2

fmt.

println

(students)

}

物件導向

type cat struct

type person struct

func

main()

type monster struct

func

main()

//將monster變數序列化為json格式字串

jsonmonster,

_:= json.

marshal

(monster)

fmt.

println

(string

(jsonmonster)

)}

C語言第四天

今天我們學習了陣列,包括陣列的定義,陣列的排序,氣泡排序法。int array 10 printf 改變前 for int i 0 i 10 i printf n for int i 0 i 10 1 i printf 改變後 for int i 0 i 10 i printf n 這很重要,要牢記...

C語言(第四天)

型別轉換 小結這裡的 不是相等的意思,而是將值賦給變數的意思。那麼它的語法規則是什麼呢?資料型別 變數名 值 該語法便是c語言賦值運算子的使用方法。加法運算子,就沒有什麼可說的。相信大家都會使用。與加法使用類似,使用方法簡單。相信大家都會使用。乘法顧名思義,就是至少兩數相乘。這裡不在給出 示例,大家...

資料結構第四天

0x00 棧 stack 棧是一種lifo 後進先出 的資料結構,有入棧 push 出棧 pop 兩種操作,且只能操作棧頂元素。在python中有多種可以實現棧的資料結構。1 list list是python內建的列表資料結構,它支援棧的特性,有入棧和出棧操作。只不過用list實現棧效能不是特別好。...