声明变量
定义没有初始值的变量,必须带类型
package main
func main() {
var n int
n = 1
println(n)
}
有初始值不必须定义类型
package main
func main() {
var a = "aaa"
var b float32 = 1.6
println(a, b)
}
函数内部可以使用:=进行定义
package main
func main() {
x := 123
println(x)
}
一次定义多个变量(多个变量是从左到右依次赋值)
package main
var c,d int
var (
g int
h float32
)
var i,z = "test","hello"
func main() {
c = 2
d = 3
e,f := 4,5
g,h = 1,2.01
println(c, d, e, f, g, h, i, z)
}
变量赋值过程中(变量赋值,先计算所有相关值,在从左到右依次赋值)
package main
func main() {
data,i := [3]int{0,1,2}, 0
i,data[i] = 2, 100 //此处是赋值,不是初始化,所以不需要使用":="
println(i, data[0], data[2])//此处的结果是:2,100,2
}
特殊占位符’-‘,用于忽略值占位
package main
func test()(int, string) {
return 1,"aa"
}
func main() {
_,a := test()
println(a) // aa
}
局部变量如果没有被使用会当做错误
package main
func test()(int, string) {
return 1,"aa"
}
func main() {
_,a := test() //a没有被使用,最终会报错
}