Go 是静态类型语言,不能在运行期间改变变量类型;
使用var关键字定义变量,自动初始化为0,如果设了初值,可省略类型,由系统自动推断。
var a int
var b float32/float64 = 3.3
var s = "abc"
在函数内部,可以用 “ := ” 定义并初始化变量(注:此方式只能用在函数内,不能用于全局变量)
func main() {
x := 123 //注意检查是定义新局部变量还是修改局部变量;该方式容易造成错误
}
可一次定义多个变量
var x,y,z int
var s,n = "abc",123
var(
a int
b float32/64
)
func main() {
s,n := "LLL",321
fmt.Println(x,s,n) //0 LLL 321
多变量赋值是,从左到右依次赋值
data,i := [3]int{1,2,3},0
i,data[1] := 2,100 //(i = 0) ->(i = 2),data[0] = 100
特殊只写变量 "_",用于忽略占位符
func test() (int ,string) {
return 1,"abc"
}
func main() {
_,s := test()
fmt.Println(s) //abc
}
全局变量声明后不使用没问题,但局部变量声明后不使用会报错,但可以用 “_” 忽略
注意重新赋值与定义新同名变量的区别。
有疑问加站长微信联系(非本文作者)