1.变量分类

变量的本质是计算机分配的一小块内存,专门用于存放指定数据,在程序运行过程中该数值可以发生改变;当程序运行结束,存放该数据的内存就会释放,该变量就会随着内存的释放而消失。

变量分为局部变量和全局变量:

  • 局部变量: 是定义在大括号{}内部的变量,大括号的内部也是局部变量的作用域。
  • 全局变量: 是定义在函数和大括号{}外部的变量。

2. 变量声明

2.1 使用var关键字

var 变量名 变量类型 = [变量值]

1
2
3
4
5
6
7
8
9
//定义多个变量
var vname1,vname2,vname3 type

//定义变量,并初始化
var vname1 int = 1

//同时初始化多个变量
var vname1,vname2,vname3 = v1,v2,v3
// 示例: var a, b, c = 3, 4, "foo"

2.2 使用 :=

1
2
3
4
5
6
7
//定义变量,并初始化
vname1 := 1

//同时初始化多个变量
 vname1,vname2,vname3 := v1,v2,v3 
// 示例: var a, b, c = 3, 4, "foo"

2.3 分组声明

Go语言中,同时声明多个常量、变量,或者导入多个包时,可采用分组的方式进行声明

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
// 同时导入多个包
import (
	"fmt"
	"errors"
)

// 声明多个常量
const (
  i = 100
  pi = 3.14
  prex = "Go_"
)

// 声明多个变量
var (
  a int
  b string = "hello"
  c string = "world"
)

2.4 匿名变量: _(下划线)

任何赋予它的值都会被丢弃,Go语言对于已声明但未使用的局部变量会在编译阶段报错,可以通过其来丢弃。

1
_, b := 1,2