Go學習-map

Map初始化

package main

import (
	"fmt"
)

func main() {
	var m1 map[int]string
	m1 = map[int]string{}
	fmt.Println(m1)

	//make方式
	m2 := make(map[int]string)
	fmt.Println(m2)
}

輸出

chenlilong@DESKTOP-B9ALUUJ MINGW64 /d/gopath/src
$ go run map.go
map[]
map[]

注意:

1、map的可以key必須可以使用==,或!=進行比較

2、使用delete刪除

3、for循環得到的v值爲值傳遞,修改值需要通過索引修改

package main

import (
	"fmt"
)

func main() {
	m := make(map[int]string)
	m[1] = "ok"       //賦值
	fmt.Println(m[1]) //取值
	delete(m, 1)      //刪除
	fmt.Println(m[1])

	m2 := map[int]string{1: "hello", 2: "ok"}
	//v是值傳遞
	for _, v := range m2 {
		fmt.Println(v)
		v = "no"
	}
	fmt.Println(m2)

	//通過for修改裏面的值
	for k, v := range m2 {
		fmt.Println(v)
		m2[k] = v + "new"
	}
	fmt.Println(m2)
}

輸出

chenlilong@DESKTOP-B9ALUUJ MINGW64 /d/gopath/src
$ go run map.go
ok

hello
ok
map[1:hello 2:ok]
hello
ok
map[2:oknew 1:hellonew]

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章