初识go变量,使用var和:=来声明变量,声明变量的三种方式
Go语言的变量名由字母、数字、下划线组成,其中首个字符不能为数字。
tip:(Go语言中的变量的规范,也和其他高级语言相同)
声明变量的一般形式是使用 var 关键字:
var 变量名 数据类型
三种Go变量的定义方式:
1. 使用var声明单个或多个变量,同时确定数据类型
// 声明单个变量
var 变量名 数据类型
// 一次性声明多个变量
var 变量名1,变量名2,变量名3,... 数据类型
例子:
package main
import "fmt"
func main(){
// 声明单个变量
var a string // 默认值为空字符串
// 声明单个变量并且赋值
var b string = "张三"
// 声明多个变量,同时赋初始值
var c,d,e string = "李四","王五","赵六"
// 打印输出
fmt.Println(a,b,c,d,e)// 张三 李四 王五 赵六
}
2. 使用var声明单个或多个变量,通过其变量值确定数据类型
// 声明并且初始化单个变量,其数据类型由编译器来确定
var a = "hello"
// 声明并且初始化多个变量,其数据类型由编译器来确定
var b,d = "小猫",14
例子:
package main
import "fmt"
func main(){
// 通过值来确定其数据类型
var a = "hello"
var b,d = "小猫",14
fmt.Printf("%s\t,%s\t,%d",a,b,d)// hello ,小猫 ,14
}
3. 使用 := 声明变量
变量名 := 值 // 通过值来确定其数据类型(编译器去完成)
例子:
package main
import "fmt"
func main(){
a := "world"
/*
上面的这句代码等同于
var a string
a = "world"
*/
fmt.Println(a)
}
使用:=
来声明变量时,需要注意的是,如果变量已经使用var 声明过了,那么再接着使用:=
去声明变量就会产生编译错误。
:=
是使用变量的首选形式,但是它只能被用在函数体内,而不可以用于全局变量的声明与赋值。使用操作符 := 可以高效地创建一个新的变量,称之为初始化声明。
在代码块中不能使用:=
来再次对相同名称的变量进行初始化声明,比如下面的例子:
package main
import "fmt"
func main(){
number1 := 123
number1 := 245
fmt.Println(number1)
}
提示: No new varibales on the left side of ':='