map 對映鍵到值:
map 在使用之前必須用 make 來建立(不是 new);乙個值為www.cppcns.com nil 的 map 是空的,並且不能賦值。
複製** **如下:
package main
import www.cppcns.com"fmt"
type vertex struct
var m map[string]vertex
func main()
fmt.println(m["bell labs"])}
map 的文法跟結構體文法相似,不過鍵名是必須的。
複製** **如下:
package main
import "fmt"
type vertex struct
var m = map[string]vertex,
"google": vertex,
}func main()
如果頂層型別只有型別名的話,可以在文法的元素中省略鍵名。
複製** **如下:
package main
import "fmt"
type vertex struct
var m = map[string]vertex,
"google":&nbswww.cppcns.comp; &nbs程式設計客棧p; ,
}func main()
修改map:在 map m 中插入或修改乙個元素:
複製** **如下:
m[key] = elem
獲得元素:
複製** **如下:
elem = m[key]
刪除元素:
複製** **如下:
delete(m, key)
通過雙賦值檢測某個鍵存在:
複製** **如下:
elem, ok = m[key]
如果 key 在 m 中, ok 是 true。 否則,ok 是 false 並且 elem 是 map 的元素型別的零值。
同樣的,當從 map 中讀取某個不存在的鍵時,結果是 map 的元素型別的零值。
複製** **如下:
package main
import "fmt"
func main()
本文標題: go語言map用法例項分析
本文位址:
GO語言對映(Map)用法分析
對映是一種內建的資料結構,用來儲存鍵值對的無序集合。1 對映的建立 make map keytype valuetype,initialcapacity make map keytype valuetype map keytype valuetype map keytype valuetype 如下...
Go語言中slice的用法例項分析
slice 指向陣列的值,並且同時包含了長度資訊。t 是乙個元素型別為 t 的 slice。複製 如下 package main import fmt func main fmt.println p p for i 0 i len p i slice 可以重新切片,建立乙個新的 slice 值指向相...
Go語言介面用法例項
介面型別是由一組方法定義的集合。介面型別的值可以存放實現這些方法的任何值。複製 如下 package main import fmt 程式設計客棧nb math type abser inte ce func main a f a myfloat implements abser a v a ver...