前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Golang语言社区--Go语言基础第二节变量

Golang语言社区--Go语言基础第二节变量

原创
作者头像
李海彬
修改2018-03-06 13:52:45
9640
修改2018-03-06 13:52:45
举报
文章被收录于专栏:Golang语言社区Golang语言社区

大家好,我是社区主编cserli(或者大家叫我彬哥也可以),Golang语言社区一直致力于Go语言相关技术干货的分享,希望初学者可以少走些弯路,我仅仅是提供一个快捷学习的平台,希望越来越多的人熟知Go语言。这节课给大家带来的是关于Go语言的基础变量的文章。不管任何开发语言,变量是我们首选熟知的一个名词,那么什么是开发语言的变量哪?变量其实就是随着某些关联的条件发生变化后,变量的数据随之改变的一个具有固定意义但值不确定的名词。

那么Go语言是如何定义和使用变量那?如下

变量声明语句:

代码语言:go
复制
var 变量名 变量类型

例子:

代码语言:javascript
复制
var v1 int           // 整数  
var v2 string         // 字符串
var v3 [10]int               // 数组
var v4 []int                  // 数组切片
var v5 struct {        // 结构体
    f int
    d string
}  
var v6 *int                  // 指针
var v7 map[string]int        // map,key为string类型,value为int类型
var v8 func(a int) int       

可以使用一个var关键字同时声明多个变量:

代码语言:go
复制
var (
    v1 int
    v2 string
    v3 map[string]int    
)

如果在声明变量的同时还进行了初始化,则var关键字可以省略,并且Go编译器可以从初始化表达式的右值推导出该变量应该声明为哪种类型,这有点类似于动态类型,但Go实际上是强类型的语言(静态类型语言)。

如下所示三种用法的效果是一样的:

代码语言:javascript
复制
var v1 int = 10
v2 int = 10    // 编译器自动推导出v2的类型
v3 := 10      // 编译器自动推导出v3的类型

说明:

":="用于明确表达同时进行变量声明和初始化工作,但要注意出现在:=左侧的变量不应该是已经被声明过的,否则会导致编译器报错,如下:

代码语言:go
复制
var i int
i := 2     //error

这节就暂时到这里,下节课我们来聊聊常量在Go语言中的相关知识。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档