1.go语言定义变量的三种格式,
标准格式
var 变量名 数据类型 = 值
可以定义时赋值,也可以先定义后赋值
var 变量名 数据类型
数据类型=值
自动推导类型格式
var 变量名 =值
简短格式
变量名 :=值
2.连续定义
package main
import "fmt"
func main(){
var num1,num2 int//先定义后赋值
num1=10
num2=20
var num3,num4 int =30,40 //定义时赋值
var num5,num6 =50,60 //省略类型
num7,num8 :=70,80 //省略关键字和类型
fmt.Println(num1,num2,num3,num4,num5,num6,num7,num8)
}
3.变量组
package main
import "fmt"
func main(){
var(//先定义
num1 int
num2 float32
)
num1=10
num2=2.22
var(//定义时赋值
num3 int=30
num4 float32 =4.44
)
var(//定义赋值并省略类型
num5 =30
num6 =6.66
)
var(//一行定义多个
num7,num8 = 70,80
num9,num10 = 9.99,10
)
}
4.注意要点
1)简短模式的含义是定义并初始化
2)不要把:=当做赋值运算符来使用
3):=只能用于定义局部变量,不能定义全局变量
4)使用:=定义变量时,不能指定var关键字和数据类型
5)变量组不能使用:=
6)使用:=同时定义多个变量,必须给所有变量初始化
7)通过:=同时定义多个变量,只要任意一个变量没有定义过都会做退化赋值操作
8)定义的局部变量或者导入的包没有被使用,那么编译器会报错,无法编译运行,但是定义的全局变量没有被使用编译器不会报错,可以编译运行
package main
import "fmt"
var num = 1//定义一个全局变量
//3.:=只能用于定义局部变量,不能定义全局变量
num2 :=2 //编译报错
func main(){
//2.不要把:=当做赋值运算符来使用
num := 10//定义一个局部变量
//1.简短模式的含义是定义并初始化
num := 20//编译器报错,重复定义
//4.使用:=定义变量时,不能指定var关键字和数据类型
var num3 :=10//编译报错
var num4 int :=10//编译报错
//5.变量组不能使用:=
var(
num5 :=10 //编译报错
)
//6.使用:=同时定义多个变量,必须给所有变量初始化
num6,num7 :=666,777 //正确
num8,num9 :=888 //报错
//7.通过:=同时定义多个变量,只要任意一个变量没有定义过都会做退化赋值操作
num,num10 := 20,100
}