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]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值