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

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

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

变量声明语句:

var 变量名 变量类型

例子:

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关键字同时声明多个变量:

var (
    v1 int
    v2 string
    v3 map[string]int    
)

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

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

var v1 int = 10
v2 int = 10    // 编译器自动推导出v2的类型
v3 := 10      // 编译器自动推导出v3的类型

说明:

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

var i int
i := 2     //error

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

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

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

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏青枫的专栏

Eclipse保存文件时出现字符编码错误

eclipse 由于开源所以支持了比较杂的编码方式,而这些一个工程导入时添加了不少的外来程序,由于不是同一工程一次编码带来了其中含有 GBK 或 UTF8 或 ...

511
来自专栏一个会写诗的程序员的博客

第7章 面向对象编程(OOP)

7.2 类与继承 7.2.1 类 7.2.1.1 抽象类 7.2.1.2 接口 7.2.1.3 枚举 7.2.1.4 注解 7.2.1.5 静态类与...

501
来自专栏mini188

学习笔记:Hashtable和HashMap

学了这么些天的基础知识发现自己还是个门外汗,难怪自己一直混的不怎么样。但这样的恶补不知道有没有用,是不是过段时间这些知识又忘了呢?这些知识平时的工作好像都是随拿...

1778
来自专栏noteless

[三]JavaIO之IO体系类整体设计思路 流的概念以及四大基础分类

从数据库,从文件,从内存,从网络拿数据,你都可以叫做输入,数据写出,都可以叫做输出,这并没有什么好纠结的

652
来自专栏Crossin的编程教室

【Python 第27课】 list切片

list有两类常用操作:索引(index)和切片(slice)。 昨天我们说的用[]加序号访问的方法就是索引操作。 除了指定位置进行索引外,list还可以处理负...

3317
来自专栏怀英的自我修炼

Java漫谈8

今天我们来聊聊字符串。 字符串,在Java中一个最接近与8大数据类型的存在。甚至于由于它太好用了,以至于在编写代码的时候都快忘了有个叫char的基本数据类型了。...

33410
来自专栏猿人谷

总结---5

1.语义搜索 所谓语义搜索,是指搜索引擎的工作不再拘泥于用户所输入的关键字,而是准确捕捉到用户所输入语句后面的真正意图,并以此来进行搜索,微软、谷歌和Fac...

18110
来自专栏叁金大数据

自学Python一 迷茫中的开端!

  有心学习一下Python,多门技术多条路啊。经历了找教程,看代码,写demo,这东西入门容易精通难啊!又因为请了两周婚假彻底忘光光。想了想自己还是边复习边写...

852
来自专栏horstxu的博客

一图弄懂ASCII、GB2312、GBK、GB18030编码

最近项目中涉及到了解析文件内容的需求,文件中全都是中文,由于这一过程中碰到的乱码问题实在过多,所以特地花时间研究了一下中文编码。本文中先介绍一下ASCII,GB...

7166
来自专栏青玉伏案

设计模式(四):从“兵工厂”中探索简单工厂、工厂方法和抽象工厂模式

前面陆陆续续的更新了三篇关于设计模式的博客,是关于“策略模式”、“观察者模式”、“装饰者模式”的,今天这篇博客就从“兵工厂”中来探索一下“工厂模式”(Facto...

19810

扫码关注云+社区