07 指针和map

一、指针

&:取地址
*:根据地址取值

1.new

//申请一个内存地址
var p *int
var p1 = new(int)

fmt.Println(p)  //<nil>
fmt.Println(p1) //0xc000128058

2.make

//区别于new,只用于slice、map、channel内存创建,返回类型而不是指针
var a = make([]int, 3, 5)
var b = make(map[string]int, 10)

二、map

1.定义

//方法1
var a = make(map[string]int, 1)

//方法2
var b map[string]int
b = make(map[string]int, 10)

2.判断键是否存在

var b = make(map[string]int, 10)
b["hello"] = 1
b["world"] = 2

value, ok := b["hello"]

fmt.Println(value, ok) //1 true

3.遍历

var b = make(map[string]int, 10)
b["hello"] = 1
b["world"] = 2

for key, value := range b {
	fmt.Println(key, value) //1 true
}

4.删除元素

delete(b, "hello")
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值