零值就是变量没有做初始化时系统默认设置的值。
在Go语言中,如果你声明了一个变量但是没有对它进行赋值 *** 作,那么这个变量就会有一个该类型的默认零值。
每个类型对应零值如下表格
类型 | 零值 |
数值 | 0 |
字符串 | 空字符串 |
布尔 | false |
指针 | nil |
引用类型(切片/映射/通道/接口/函数) 被声明为零值的引用类型的变量 | 引用的底层数据结构会被初始化为对应的零值 nil |
package main
import "fmt"
func main() {
// 数值零值为0
var b int
fmt.Println(b)
// 字符串零值为空字符串
var a string
fmt.Println(a)
// 布尔零值为 false
var c bool
fmt.Println(c)
// 指针零值为 nil
var d *int
fmt.Println(d)
}
其中nil参考Go语言之nil_WonderChaos的博客-CSDN博客
参考[1]《Go语言实战》——威廉•肯尼迪
[2] Go语言中nil的理解_stephen_curry300的博客-CSDN博客_go nil
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)