Go语言变量名由字母、数字、下划线组成,其中首个字母不能为数字。
但是字母不限于英文字母,所有UTF-8字符都可以。
使用var关键字
声明和初始化变量的一般形式是使用 var 关键字,例如:
var a int = 9
注意,Go语言变量类型放在变量名之后!
如果上面的代码段没有初始化值,那么变量就会被初始化为对应类型的零值。
var a int
这个代码片段声明了一个int类型变量a,并把a初始化为int零值,即0。
直接初始化
这种方法定义和初始化变量,既不需要var关键字,也不需要指定类型,快捷又方便,实际的代码中建议用这种方式。
a := 3
以上代码段定义了一个变量a,并把它初始化为3。
多变量声明
Go语言可以同时声明和初始化多个变量这个和Python有点像,具体语法如下:
//类型相同多个变量, 非全局变量
var vname1, vname2, vname3 type
vname1, vname2, vname3 = v1, v2, v3
var vname1, vname2, vname3 = v1, v2, v3 //和python很像,不需要显示声明类型,自动推断
vname1, vname2, vname3 := v1, v2, v3 //出现在:=左侧的变量不应该是已经被声明过的,且只能在函数体内出现
大写字母开头的变量是可导出的,是公用变量
小写字母开头的是不可导出的,是私有变量
大写字母开头的函数也是一样,是公有函数
小写字母开头的函数是私有函数
全局变量(变量组只能在全局环境下使用)