1.简介
按照Go语言的规范,任何类型在未初始化的时候都对应一个零值:
布尔型零值为:false
整型零值为:0
字符串的零值为:
而指针,函数,interface,slice,channel,map的零值均为nil
Go文档中说明:nil是预定义的标识符,代表指针,通道,函数,接口,映射或者切片的零值,并不是Go的关键字之一。
还有,nil只能赋值为以上的几个类型,若赋值给基础类型,则会引发panic
2.nil的作用
指针(pointer)
若对一个值为nil的指针调用其方法或者访问对应类型