变量是程序的基本组成单位。
一、变量介绍
变量相当于内存中的一个数据存储空间的表示,通过变量就可以访问到该存储空间的值。 变量使用的基本步骤: 声明 (定义) 变量;赋值;使用。
package main
import "fmt"
func main() {
// 定义变量
var i int // 定义 int 型变量 i
// 给 i 赋值
i = 10
// 使用变量
fmt.Println("i = ", i)
}
输出结果为:

二、变量使用注意事项
1、变量表示内存中的一个存储区域,该区域有自己的名称 (变量名) 和类型 (数据类型);
2、Golang 变量使用的三种方式:1) 指定变量类型,声明后若不赋值,则使用默认值;2) 根据值自行推断变量类型;3) 省略关键字 var,改用数学定义符号 :=。
package main
import "fmt"
func main() {
// 变量使用方式1:声明后不赋值,使用默认值
// int 的默认值为 0
var i int
fmt.Println("i = ", i)
// 变量使用方式2:根据值自行判断变量类型(类型推导)
var num = 13.14
fmt.Println("num = ", num)
// 变量使用方式3:省略关键字 var,采用 := (即数学中的定义符号)
// 注意,:= 左边的变量必须是未声明过的变量
/***********************
等价于:
var name string
name = "Zhang"
************************/
name := "Zhang"
fmt.Println("name = ", name)
}
输出结果为:

3、 多变量声明: 一次性声明多个变量。
// 方式1:一次性声明3个int型变量
var n1, n2, n3 int
// 方式2:一次性声明多个不同类型的变量
var m1, name, m3 = 100, "Zhang", 200
// m1 = 100, name = "Zhang", m3 = 200
// 方式3:省略关键字var
p1, gname, p3 := 100, "Li", 200
4、定义全局变量:
var n1 = 100
var name = "Zhang"
// 一次性声明
var (
n2 = 200
gname = "Li"
)
5、 作用域内的数据值可以在同一类型范围内不断变化。
package main
import "fmt"
func main() {
// 作用域内的数据值可以在同一类型范围内不断变化
var i int = 10
i = 30
i = 50
fmt.Println("i = ", i)
// i = 10.2 是不行的,不能改变变量的类型
}
输出结果以最后一次赋值为准:

6、 变量在同一个作用域 (一个函数或者代码块) 内不能重名。
7、变量 = 变量名 + 值 + 数据类型,变量的三要素。
8、变量没有赋初值,编译器会使用默认值:int 的默认值为0,string的默认值为空串,小数的默认值也为0等。