在Go中,变量的初始化和定义,有以下几种:
- 第一种,定义类型,不显性设置初始值
var a int
// a = 0
这种方式,定义了一个int 类型的变量a,并且会初始化对应类型的默认值,这里int的默认是是0.
- 第二种,设置初始值,但是不显性定义类型
var a = 1
// fmt.Println(fmt.Sprintf("%T", f)) 输出int
这种方式,在定义的时候就进行赋值,但是没有定义对应的类型,这个时候变量的类型会根据定义式赋值的类型决定。类似上面赋值了一个int类型,所以对应变量的类型就是int。
- 第三种,定义类型,设置初始化