在 golang 中, 变量是通过编译器声明和使用的,并且编译器会进行相应的类型检查
package main import ( "fmt" ) func main() { var a string = "initial" fmt.Println(a) var b, c int = 1, 2 fmt.Println(b, c) var d = true fmt.Println(d) var e int fmt.Println(e) f := "short" fmt.Println(f) }
initial 1 2 true 0 short
这, 这 好奇怪的代码 .....
结论:
1 : golang 中对于变量声明的类型是放在 变量的后面
2 : 在一条语句中可以同时声明几个变量
3 : 可以通过 “:= ”这个复制符号将一个值赋值于一个变量, 此时变量可以不用声明类型, 由编译器进行推断
有疑问加站长微信联系(非本文作者)

有人吐槽: golang 类型后置 声明语句, 让人“真气逆行”。
这个问题应该这么看:
1)类型后置是 pascal 风格,早已有之,不是go的创新。
2)而且 类型后置 表达更加严谨,特别是一行声明多个变量时 更加不容易出错。
3)大家先放轻松一点,平胸而论:类型放在全部面还是后面, 不过就是一种表达风格,书写习惯。类似的问题还有:大括号是否要独立分行的问题;长行断为两行时标点符号是否要在新行首的问题;不一而足。 如果不能和平共处,只能有一个绝对真理,一定要你死我活,非要为此发起一场大小头的宗教战争不可,那随你的便去吧,我老人家反正是不奉陪的。