不论是使用哪种高级程序语言编写程序,变量都是其程序的基本组成单位。变量相当于内存中一个数据存储空间的表示,通过变量名可以访问到变量的具体的值。
Go 语言 是静态类型语言,因此变量(variable)是有明确类型的。编译器会检查函数调用中,变量类型的正确性。
var identifier type
参数 | 描述 |
---|---|
var | 声明变量使用的关键字。 |
identifier | 变量名。 |
type | 变量的数据类型。 |
需要注意的是,Go 语言和许多编程语言不同,它在声明变量时将变量的类型放在变量的名称之后。
当一个变量被声明之后,系统自动赋予它该类型的零值:int 类型 默认被设置为 0,float 类型 默认被设置为 0.0,bool 类型 默认被设置为 false,string 类型 默认被设置为空字符串,指针类型 默认被设置为 nil。
变量类型 | 说明 |
---|---|
bool | 布尔类型 |
string | 字符串类型 |
int | 整型 |
int8 | 整型 |
int16 | 整型 |
int32 | 整型 |
int64 | 整型 |
uint | 无符号整型 |
uint8 | 无符号整型 |
uint16 | 无符号整型 |
uint32 | 无符号整型 |
uint64 | 无符号整型 |
uintptr | 指针类型 |
byte | uint8 的别名 |
rune | int32 的别名 代表一个 Unicode 码 |
float32 | 浮点型 |
float64 | 浮点型 |
complex64 | 复数类型 |
complex128 | 复数类型 |
Go 语言变量的声明形式有三种,即标准格式、批量格式和简短格式。
var 变量名 变量类型
变量声明以关键字 var 开头,后置变量类型,行尾无须分号。
var(
name string
site string
age int32
modules []string
isOnline bool
)
使用关键字 var 和括号,可以将一组变量定义放在一起。
名字 := 表达式
名字1, 名字2, 名字3 ... := 表达式1, 表达式2, 表达式3 ...
使用简短格式定义变量时,必须同时显式初始化。且不能为变量提供数据类型。简短格式定义变量只能用在函数的内部,不能用作全局变量。
Go 语言是静态类型语言,因此变量(variable)是有明确类型的。编译器会检查函数调用中,变量类型的正确性。因为简洁和灵活的特点,简短变量声明被广泛用于大部分的局部变量的声明和初始化。
var 形式的声明语句往往是用于需要显式指定变量类型地方,或者因为变量稍后会被重新赋值而初始值无关紧要的地方。Go 语言变量的声明有三种形式,分别为:标准格式、批量格式和简短格式。