package main import "fmt" var( aa =3 bb ="kkk" cc =true )//go语言中,变量可以定义在函数外面,并不是表示全局变量而是作用域在整个包内 //定义变量 func variableZeroValue() { var a int var s string //fmt.Print(a,s) fmt.Printf("%d %q ",a,s)//打出空串,以""表示 } //变量赋初值 func variableInitialValue(){ var a,b int = 3,4 var s string = "abc" fmt.Println(a,b,s) } //变量可以忽略类型,由go自动判断,可以赋多个类型 func variableTypeDeduction() { var a,b,c,d =3,4,true,"def" fmt.Println(a,b,c,d) } //用:=代替var,效果一样 func variableShorter() { a,b,c,d :=3,4,true,"def" b=5//:=表示定义变量,最初出现之时可用:= fmt.Println(a,b,c,d) } func main() { fmt.Println("hello world") variableZeroValue() variableInitialValue() variableTypeDeduction() variableShorter() fmt.Println(aa,bb,cc) }
使用var关键字
var a,b,c
var s1,s2 string= "hello","world"
可放在函数内,或可放在包内
可以用var()集中定义变量
编译器可以自动识别类型:var a,b,c,d =3,4,true,"def"
使用:=定义变量
a,b,c,d :=3,4,true,"def"
只能在函数内使用