变量

简介: 变量

什么是变量

对于有编程基础的人来说,变量相当的熟悉了,看一下学术介绍:


变量指定了某 存储单元 (Memory Location)的名称,该存储单元会存储 特定类型 的值。


提示

接下来的内容要在脑海中时刻提示自己:Go是一门强类型的语言


变量声明


声明单个变量

语法上为: var name type ,示例:

var age int点击复制复制失败已复制


该语句声明了一个 int 类型的变量,命名为 age 。此语句仅为声明语句,并未赋值,那么 Go自动将其初始化,赋值该变量类型的零值Zero Value


Note

int 类型的零值即为 0


变量声明之后,即可赋值为本类型的任何值,示例:

var age int
age = 25
age = 30点击复制复制失败已复制


声明单个变量并初始化

声明变量的同时可以给定初始值。语法上为: var name type = initialValue ,示例:

var age int = 25点击复制复制失败已复制


类型推断

Go 是一门具有类型的语言,因此很多时候可以借用类型推断功能来自动推断变量的类型,这样就能减少代码量,并让代码结构更加清晰。


语法上为 var name = initialValue ,示例:

var age = 25点击复制复制失败已复制


声明多个变量

这个功能很多语言都支持, Go 也实现了,通过一条语句声明多个变量可以有效的减少代码量,语法上为: var name1, name2 type = initialValue1, initialValue2 ,示例:

var width, height int = 100, 50点击复制复制失败已复制


当然,也可以只声明,不赋值,示例如下:

var width, height int点击复制复制失败已复制


这样得到的变量会自动赋值为本类型的零值,上述代码中, widthheight 变量即会自动赋值为 0


如果想要在一个语句中声明不同类型的变量,语法需要进行一定的调整,语法如下:

var (
    name1 = initialValue,
    name2 = initialValue,
    name3 type
)点击复制复制失败已复制


示例如下:

var (
    name = "iricbing",
    age = 25,
    height int
)点击复制复制失败已复制


简短声明

这个纯粹就是为了简化写法的,当然,这种简化的声明反而更深的人心,毕竟程序员都是以“懒惰”出名的嘛。简短声明采用 := 操作符来实现,语法为:

name := initialValue
or
name1, name2 := initialValue1, initialValue2点击复制复制失败已复制


这个操作符有一个前提: := 操作符左边的所有变量都有初始值,并且左边至少有一个变量是未被声明的!


Note

很好理解,如果有的变量没有初始值,那还类型推断个毛线啊,又不是 JavaScript ,第二句也好解释,变量都被声明过了,那不就成赋值操作符( = )了嘛,就不是声明了。

目录
相关文章
|
5月前
|
存储 C++
6变量
6变量
42 1
|
5月前
|
C++
c++常见变量
c++常见变量
40 0
|
15天前
|
Java Python
变量
变量
40 14
|
3月前
|
存储 C语言
C 变量
【7月更文挑战第2天】C 变量。
19 2
|
5月前
|
存储 C语言 容器
C变量
C变量
33 1
|
5月前
|
存储 程序员 编译器
C++程序中的变量
C++程序中的变量
50 1
|
5月前
|
Python
DTL变量
【2月更文挑战第28天】DTL变量。
40 1
|
5月前
|
存储 编译器 C++
c++的变量
c++的变量
37 0
思考变量引起的巨大变化
思考变量引起的巨大变化
|
12月前
|
Java
1.3 常量与变量
1.3 常量与变量
45 0