go语言的基本语法 - 变量
概念:
变量是计算机语言中存储数据的基本单元,变量的功能就是存储数据。简单来说就是在计算机内分配一小块内存,在程序运行的过程中临时存放数据,当程序运行结束时,这块内存也就自动释放掉了。
变量又分为局部变量和全局变量
局部变量,定义在大括号{}内部的变量,大括号内部也是局部变量的作用域。
全局变量,定义在函数和大括号{}外部的变量。
go语言的变量由字母、数字、下划线组成,首个字母不能为数字,并且定义的局部变量没有被调用会发生编译错误。
变量声明:
var 变量名 变量类型var a int定义一个变量名a类型为int型的变量
批量声明未初始化的变量
var ( a int
b string
c []float32
d func() bool
e struct { x int y string
}
)
未初始化变量的默认值有以下特点
整型和浮点型变量默认值是0
字符串默认值为空字符串
布尔型默认值false
函数、指针变量、切片默认值null
初始化变量的标准格式
var 变量名 变量类型 = 表达式
编辑器自动推断格式如下
var 变量名 = 表达式简短声明方式
变量名 := 表达式
举例
var a int = 10
var b = 10c := 10
:=是声明变量的首选方式,但是它只能用在函数体内,不可以声明全局变量,改变了名必须是没有被定义过的变量,若定义过,会报错。
多个变量赋值a, b := 100, 200
变量多重赋值
多个变量同事赋值,
var a int = 10
var b int = 10var tmp inttmp = a
a = bb = t
下面的写法可以减少内存的使用var a int = 10
var b int = 20
a = a ^b
b = b^a
a = a^b
var a int = 10
var b int = 20b, a = a, b多重赋值时,左值和右值按照从左到右的顺序赋值。这种方法在错误处理和函数中经常使用。
匿名变量go语言的函数可以返回多个值,但并不是每个值都能用上,这里就可以用匿名函数,用下划线“_”替换即可。
例如定义一个函数,返回两个int型变量,第一个返回10,第二个返回20,第一次调用舍弃第二个返回值,第二次调用舍弃第一个返回值。
func GetData() (int, int) { return 10, 20}a, _ := GetData() //舍弃第二个返回值_, b := GetData() //舍弃第一个返回值
浙公网安备 33010602011771号