Go中map的建立和初始化
摘要:
// code_014_map_usage project main.go
package main
import (
"fmt"
)
func main() {
/*Go語言中的map(對映,字典)是一種內建的資料結構,它是一個無序的key-value對的...
// code_014_map_usage project main.go package main import ( "fmt" ) func main() { /*Go語言中的map(對映,字典)是一種內建的資料結構,它是一個無序的key-value對的集合。 1)鍵的約束: 在一個map裡所有的鍵都是唯一的,而且必須是支援==和!=操作符的型別 2)切片、函式以及包含切片的結構型別這些型別由於具有引用語義,不能作為對映的鍵 err, invalid map key type []string 3)map值: 可以是任意型別,沒有限制。 4)鍵值的資料型別: map裡所有鍵的資料型別必須是相同的,值也必須如何,但鍵和值的資料型別可以不相同。 5)注意:map是無序的,我們無法決定它的返回順序,所以,每次列印結果的順利有可能不同。 */ //1、建立 var g1 map[int]string //預設值為nil g2 := map[int]string{} g3 := make(map[int]string) g4 := make(map[int]string, 10) fmt.Println(g1, g2, g3, g4, len(g4)) //2、初始化 var m1 map[int]string = map[int]string{1: "ck_god", 2: "god_girl"} m2 := map[int]string{1: "ck_god", 2: "god_girl"} fmt.Println(m1, m2) }
結果如下:
//map[] map[] map[] map[] 0 //map[1:ck_god 2:god_girl] map[1:ck_god 2:god_girl]