GO的变量
命名方式
作用域里
第一种
var i int = 20
注意:因为go的语法更加现代,注重于可读性,所以是变量类型在变量名的后面
这种命名用于编译器无法自动识别类型的时候精确控制变量的类型
例如:
var i float32 = 20
第二种
var i int
用于等会赋值
第三种
i := 20
go独有的方式,有点像弱类型的语言,编译器自己推测出变量类型
注意:包级别无法用这种命名方式
作用域外
细节
虽然包级别无法用:=来赋值
但是仍然可以不写变量类型,让编译器自己推算。
可以一次性命名多个
shadowing
包级别命名的变量可以在作用域里再次声明,这时作用域里的变量会覆盖包级别的变量。
杂项
GO的变量规则
命名规则
变量的命名采用驼峰命名,而名字的长短需要反应他的生存周期,如果只是用一次马上抛弃,i就够了,用的长就要相对的长一点,例如seasonNamne
在包级别如果命名为大写字母,意味着他是public向外界开放的
为小写字母,就只能在同一个包里被访问。
强制转换
go里的类型转换使用函数显性的转换
i = float32(j)
strconv包
用来处理其他类型和string的转换