Go - map



Go 中的 Map 是無序的 key-value 集合,訂好型別後,key 必須是同一種型別,value 也必須都是同一種型別。 以下是一些常使用到的語法

m := make(map[string]int) // 建立 key 是 string 、 value 是 int 的 map
m["ten"] = 10 // 將 key "ten" 的 value 設為 10
m["two"] = 2

length := len(m) // 取得目前有多少 key
fmt.Println("map: ", m)
fmt.Println("how many keys ?", length)

delete(m, "ten") // 刪除 ten 這個 key
fmt.Println("map: ", m)

_, isExist := m["ten"] // 取得 "ten" 這個 key 是否存在於 map 中
_, isExist2 := m["two"]
fmt.Println("Does ten exist ?", isExist)
fmt.Println("Does two exist ?", isExist2)

// output :
// map:  map[ten:10 two:2]
// how many keys ? 2
// map:  map[two:2]
// Does ten exist ? false
// Does two exist ? true