Go语言编程(四)之变量

   变量相当于对一块数据存储空间的命名,程序可以通过定义一个变量来申请一块数据存储空间,之后可以通过引用变量名来使用这块存储空间。

变量声明

   Go语言中使用var关键字声明变量,而类型信息放在变量名之后。变量声明不需要使用分号作为结束符。示例如下

var v1 int
var v2 string
var v3 [10]int             // 数组
var v4 []int               // 数组切片
var v5 struct {
    f int
}
var v6 *int                // 指针
var v7 map[string]int      // map, keystring类型value为int类型
var v8 func(a int) int

var关键字的另一种用法是将若干个需要声明的变量放置在一起,如下所示

var {
    v1 int
    v2 string
}

变量初始化

对于声明变量时需要进行初始化的场景,var关键字可以保留,但不再是必要的元素,如下所示:

var v1 int = 10
var v2 = 10
v3 := 10
注意:出现在:=左侧的变量不应该是已经被声明过的,否则会导致编译错误。如下面的写法:

var i int
i := 2

变量赋值

在Go语法中,变量初始化和变量赋值是两个不同的概念。下面为声明一个变量之后的赋值过程:

var v10 int 
v10 = 123
Go语言中支持多重赋值

i, j = j, i

匿名变量

我们在使用传统的强类型语言编程时,经常会出现这种情况,即在调用函数时为了获取一个值,却因为该函数返回多个值而不得不定义一堆没用的变量。在Go中这种情况可以通过结合使用多重返回和匿名变量来避免这种丑陋的写法,让代码看起来更加优雅。
假设GetName()函数的定义如下,它返回3个值,分别为firstName、lastName和nickName:
func GetName() (firstName, lastName, nickName string) {
return "May", "Chan", "Chibi Maruko"
}
若只想获得nickName,则函数调用语句可以用如下方式编写:
_, _, nickName := GetName()
这种用法可以让代码非常清晰,基本上屏蔽掉了可能混淆代码阅读者视线的内容,从而大幅降低沟通的复杂度和代码维护的难度。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值