变量
变量是计算机语言中能储存特定类型计算结果或能表示特定类型值的抽象概念
声明变量及变量赋值
go语言中声明变量有多种方法,声明单个变量最基本语法如下:
var 变量名称 变量类型
例如:
var a int//声明一个int类型的变量
以上的代码声明了一个int类型的变量a,但是没有给变量a赋值,go会自动给变量初始化,会给变量a赋值int类型的零值0,使用=可以给变量赋值
package main
import "fmt"
func main() {
var a int
fmt.Println(a)//会输出0
}
在声明变量时也可以不指定变量类型,当声明变量时同时给变量初始化,go语言可以自动推断具有初始值的变量类型
var a = 12//自动推断出变量a的类型为int
go中声明变量还有一种简便写法,使用:=声明变量,该方式只能出现在函数体中,语法如下:
变量名称:=变量值
该简便写法要求:=左边的变量必须有初始值,而且左边的变量必须有未声明的变量
package main
import "fmt"
func main() {
var b
a := 12//简便方式声明变量并进行初始化
b := 1//变量b已经声明过,所以此处会报错 no new variables on left side of :=
fmt.Println(a,b)
}
go语言中可以通过一条语句声明多个变量,语法如下:
var 变量1,变量2... 变量类型
通过这种方法声明的变量,指定了变量类型,所以声明的变量都是同一种类型。省略变量类型并给变量进行初始化,可以通过go的自动推断变量的类型
package main
import "fmt"
func main() {
var a,b int = 1,2//同时声明了两个int类型的变量并进行初始化
fmt.Println(a,b)
var aa,bb = "12aaa",5//同时声明了两个变量,变量aa类型为string,变量bb类型为int
fmt.Println(aa,bb)
}
使用:=的简便方法也可以一次声明多个变量,简便方法声明多个变量必须进行初始化,并且左边的变量至少有一个是未声明的变量
package main
import "fmt"
func main() {
a,b := 1