Go 数据类型篇(一)—— 变量、常量和枚举

变量使用入门

变量是几乎所有编程语言中最基本的组成元素。从本质上说,变量相当于是对一块数据存储空间的命名,程序可以通过定义一个变量来申请一块数据存储空间,之后可以通过引用变量名来使用这块存储空间。

由于 Go 语言是强类型静态语言,所以变量声明与赋值方式与 PHP/Python/JavaScript 等动态原因相比有很大的区别。

变量声明和命名规则

对于纯粹的变量声明,Go 语言引入了关键字 var,并且将类型信息放在变量名之后,此外,变量声明语句不需要使用分号作为结束符(实际上,所有的 Go 语句都不需要分号作为结束符,这一点和 JavaScript/Python 很像),比如我们要声明一个类型为 int 的变量 v1,示例如下:

var v1 int 

相应的,PHP 是动态语言(昵称「鸭子类型」),变量在声明时没有类型之说,变量类型是在运行时动态判断的,不需要关键字 var 修饰,而是以 $ 作为变量名前缀实现类似的效果,也没有这种纯粹的声明语句(类的成员变量除外),因为 Go 语言中这种纯粹的声明语句用于定义变量类型,PHP 这么做则毫无意义。

var 关键字的另一种用法是可以将若干个需要声明的变量放置在一起,免得程序员需要重复写 var 关键字,如下所示:

var (
    v1 int 
    v2 string
)

此外,Go 语言支持多种数据类型,关于数据类型,学院君将在后续教程中详细介绍,这里先了解下即可:

var v1 int            // 整型
var v2 string         // 字符串
var v3 bool           // 布尔型
var v4 [10]int        // 数组,数组元素类型为整型
var v5 struct {       // 结构体,成员变量 f 的类型为64位浮点型
    f float64
} 
var v6 *int           // 指针,指向整型
var v7 map[string]int   // map(字典),key为字符串类型,value为整型
var v8 func(a int) int  // 函数,参数类型为整型,返回值类型为整型

需要注意的是,变量在声明之后,系统会自动将变量值初始化为对应类型的零值,比如上述 v1 的值为

猜你喜欢

转载自blog.csdn.net/weixin_59284282/article/details/125367316