变量是计算机语言中能存储计算结果或能表示值的抽象概念,不同的变量保存的数据类型可能会不一样。
1. 声明变量
Go语言中的变量需要申明后才能使用,同一作用域内不支持重复申明,并且Go语言申明后必须使用。
申明变量的语法
var identifier type
var
:申明变量关键字identifier
:变量名称type
:变量类型
例如:
package main
import "fmt"
func main(){
var name string
var age int
var ok bool
}
2. 批量声明
使用一个var
关键字,把一些变量写在一个括号()
里
package main
func main() {
var (
name string
age int
ok bool
)
}
2.1 变量的初始化
Go语言在声明变量的时候,会自动对变量对应的内存区域进行初始化操作。每个变量会被初始化成其他类型的默认值,例如:整型和浮点型变量的默认值为0
。字符串变量的默认值为字符串""
。布尔值变量默认为false
。切片、函数、指针变量的默认为nil
。
变量初始化语法
var 变量名 类型 = 表达式
例如:
package main
func main() {
var name string = "七月"
var site string = "myiszhb@gmail.com"
var age int = 24
}
2.2 类型推导
我们在声明变量时,可以根据初始化值进行类型推导,从而省略类型。
package main
func main() {
var name = "七月"
var site = "myiszhb@gmail.com"
var age = 24
}
2.3 初始化多个变量
可以一次初始化多个变量,中间用逗号分隔。
package main
func main() {
var name,site,age = "七月","myiszhb@gmail.com",24
}
3. 短变量声明
在函数内部,可以使用:=
运算符对变量进行声明和初始化。
package main
func main() {
name := "七月"
site := "myiszhb@gmail.com"
age := 24
}
4. 匿名变量
如果我们接受到多个变量,有一些变量使用不到,可以使用下划线_
表示变量名称,这种变量叫做匿名变量,例如:
package main
import (
"fmt"
)
func getNameAndAge() (string, int) {
return "七月", 24
}
func main() {
name, _ := getNameAndAge()
fmt.Printf("name: %v\n", name)
}