理解go语言中的nil
if err != nil {
// do something....
}
当出现error不等于nil
的时候,说明出现某些错误了,需要我们对这个错误进行一些处理,而如果等于nil
说明运行正常没有错误。那什么是nil
呢?nil
的意思是无,或者是零值。在Go语言中,如果你声明了一个变量但是没有对它进行赋值操作,那么这个变量就会有一个类型的默认零值。每种类型对应的零值为:
bool -> false
numbers -> 0
string -> ""
pointers -> nil
slices -> nil
maps -> nil
channels -> nil
functions -> nil
interfaces -> nil
Go的文档中说到,nil是预定义的标识符,代表指针、通道、函数、接口、映射或切片的零值,也就是预定义好的一个变量。
nil有什么用
如果不是很需要的话,不要用NewX()去初始化值,而是使用它们的默认值,这样代码会简洁很多。