3.2.3 零值
如果没有提供明确的初始化,变量或值将被赋予默认值。也就是说,Go中的所有变量和值都总是被显式或隐式地初始化为定义明确的值,而不像许多其他编程语言那样,可能没有初始化。
对于内置类型的变量,它们的“零值”是:
布尔值为false
数值类型为0
字符串为""
函数、接口、切片、通道和映射为nil。指针的零值也是nil
对于其他复合类型(例如数组和结构体),则递归地进行初始化。例如,如果没有指定值,则将数组的每个元素设置为“零”。
最后更新于
如果没有提供明确的初始化,变量或值将被赋予默认值。也就是说,Go中的所有变量和值都总是被显式或隐式地初始化为定义明确的值,而不像许多其他编程语言那样,可能没有初始化。
对于内置类型的变量,它们的“零值”是:
布尔值为false
数值类型为0
字符串为""
函数、接口、切片、通道和映射为nil。指针的零值也是nil
对于其他复合类型(例如数组和结构体),则递归地进行初始化。例如,如果没有指定值,则将数组的每个元素设置为“零”。
最后更新于