對映概述
建立map
func demo81()
//var mmp map[string]int
//var mmp = map[string]int
//通過內建函式make建立
//mmp := make(map[string]int)
//建立乙個string為鍵,值為任意型別的map
mmp := make(map[string]inte***ce{})
//丟入鍵值對到map中
mmp["name"]="西門東"
mmp["***"]="male"
mmp["hobby"]="female"
mmp["rmb"]=0.5
fmt.printf("type=%t,value=%v,len=%d\n", mmp, mmp, len(mmp))
}
刪除鍵值對
func demo82() )
//丟入鍵值對到map中
mmp["name"] = "西門東"
mmp["***"] = "male"
mmp["hobby"] = "female"
mmp["rmb"] = 0.5
//刪除hobby對應的鍵值對
delete(mmp, "hobby")
fmt.println(mmp)
}
修改鍵值對
func demo83() )
//丟入鍵值對到map中
mmp["name"] = "西門東"
mmp["***"] = "male"
mmp["hobby"] = "female"
mmp["rmb"] = 0.5
//修改特定的鍵值對
mmp["hobby"] = [...]string
mmp["rmb"] = -29999.5
mmp["最愛的書籍"] = "平凡的世界"
fmt.println(mmp)
}
map的查詢和遍歷
func demo84() )
//丟入鍵值對到map中
mmp["name"] = "西門東"
mmp["***"] = "male"
mmp["hobby"] = "female"
mmp["rmb"] = 0.5
//沒有校驗的查詢,當key不存在時value為value1 := mmp["***"]
fmt.println("***=",value1)
value1 = mmp["***2"]
//***2= fmt.println("***2=",value1)
//帶有校驗的查詢
value2, ok := mmp["最愛的書"]
if ok == true else
//遍歷鍵值
for key, value := range mmp
//遍歷所有鍵
fmt.println("key := range mmp")
for key := range mmp
}
go 復合型別
1.陣列 1 陣列是擁有固定長度且擁有零個或者多個相同資料型別元素的序列。2 初始值預設為元素型別的零值 3 如果 出現在陣列長度的位置,則陣列的長度由初始化陣列的元素個數決定 4 陣列長度是陣列型別的一部分,3 int 和 4 int 是不同的型別,不能互相賦值 也就是說陣列長度在編譯時就已經確定...
GO 復合型別 切片
相當於長度可以擴張的陣列 經過陣列擷取的片段就是切片 func main01 擷取陣列的前9位 slice array 0 9 fmt.printf array的資料型別是 t n array fmt.printf slice的資料型別是 t,值是 v n slice,slice 下標為0開始擷取5...
GO 復合型別5 結構體
定義結構體 type book struct建立物件時直接對屬性賦值 func demo91 fmt.printf type t,value v n b,b 建立空白物件,並逐一對屬性賦值 func demo92 b.name 水許傳 b.price 34.56 fmt.printf type t,...