变量来源于数学,是计算机语言中能储存计算结果或能表示值抽象概念。变量可以通过变量名访问。Go 语言变量名由字母、数字、下划线组成,其中首个字符不能为数字。来源于https://www.runoob.com/go/go-variables.html
Go语言定义变量有多种方式,下面我们来看看具体的示例
var [变量名] [变量类型] = [值]
1 | var a int = 10 //定义变量并初始化值 |
也可以不赋值,如果未显示初始化值的时候,Go会自动为对应数据类型初始化一个默认值(零值),:
1 | var a int //自动初始化零值 |
Go 语言中的零值大概有以下几种:
类型 | 零值 |
---|---|
数值 | 0 |
布尔 | false |
字符串 | “”(空字符串) |
slice | nil |
map | nil |
指针 | nil |
函数 | nil |
接口 | nil |
信道 | nil |
Go变量会根据初始值自动判断数据类型:
1 | var a = 10 |
简短定义:
1 | a := 10 |
多变量同类型定义:
1 | var a,b int |
多变量不同类型定义:
1 | var a ,b = 0,"b" |
变量作用域,我理解的变量作用域有三种:
- 全局作用域
- 局部作用域
- 块级作用域
1 | package main |
打印结果:
1 | 8 |
如有错误之处,敬请提建议,多谢。