golang变量
1. golang变量命名规则
- 由 26 个英文字母大小写,0-9 ,_ 组成。
- 变量名不能以数字开头。
- 变量都是先声明再使用,一旦声明必须使用。
2. golang变量赋值方法
2.1 单个变量赋值
2.1.1 先声明变量类型,在赋值。
package main
import "fmt"
func main() {
var a int //定义变量a为int类型
a = 1 //赋值a等于1
fmt.Println("a =", a) //打印a变量的值
}
输出结果
a = 1
2.1.2 先声明变量类型,不赋值。
- 整型(int)和浮点型(float)变量的默认值为 0。
- 字符串(string)变量的默认值为空字符串。
- 布尔型(bool)变量默认为 false。
package main
import "fmt"
func main() {
var a int //定义变量a为int类型
fmt.Println("a = "a) //打印a变量的值
}
输出结果
a = 0
2.1.3 声明的时候直接赋值。
package main
import "fmt"
func main() {
var a int = 1 //如果没有写变量的类型,那么根据=后面的值进行判定变量的类型 (自动类型推断)var a = 1
fmt.Println("a = ", a)
}
输出结果
a = 1
2.1.4 省略var,使用:=(冒号+等号)。
package main
import "fmt"
func main() {
a := "test"
fmt.Println("a =", a)
}
输出结果
a = test
2.2 多个变量赋值
2.2.1 先定义类型,再赋值。
package main
import "fmt"
func main() {
var a, b, c int
a = 1
b = 2
c = 3
fmt.Println("a = ", a, "b = ", b, "c = ", c)
}
输出结果
a = 1 b = 2 c = 3
2.2.2 声明的时候直接赋值。
package main
import "fmt"
func main() {
var a, b, c = 1, "test", 1.1
fmt.Println("a = ", a, "b = ", b, "c = ", c)
}
输出结果
a = 1 b = test c = 1.1
2.2.3 使用:=赋值。
package main
import "fmt"
func main() {
a, b, c := "test1", 2, 2.2
fmt.Println("a = ", a, "b = ", b, "c = ", c)
}
输出结果
a = test1 b = 2 c = 2.2
3 变量的使用
3.1 全局变量
定义在函数外的变量为全局变量,同一个包的任意地方都能使用
package main
import "fmt"
var a = "test1" //单个全局变量定义
var (
b = "test2"
c = 3
)
func main() {
fmt.Println("a = ", a, "b = ", b, "c = ", c)
}
输出结果
a = test1 b = test2 c = 3
3.2 局部变量
定义在{}的变量为局部变量,只能在{}内使用
package main
import "fmt"
func main() {
a := 1
fmt.Println(a)
}
func test() {
fmt.Println(a) //引用main函数中的变量a
}
输出结果
报错:undefined: a