2. Go变量(Variables)

变量是什么,变量的命名规则,以及一些关于变量的基础没有必要再说了,我想学习Go语言的有很多都是从其他语言转过来的,那我们直接进入正题。

声明一个变量: var age int

给变量赋值: age = 10

声明一个变量并给一个初始值: var age int = 3

Go语言是编译型,强类型语言,声明变量必须指定变量类型,不过为什么设计的这么复杂?直接 int age = 3 不行吗?

不过Go语言提供了一种类型推断,变量有初始值的情况下可以由Go自行判断数据类型,比如: var age = 3

同时定义多个变量: var width, height int = 100, 50

还可以同时定义多个不同类型的变量: 

var (
    user = "root"
    pwd string = "123456"
    age int = 3
)

这种定义方式在其他语言里从来没有见到过,在实际使用中会有这种需求吗?【思考】

Go语言声明变量似乎要写很长一大串,var开头....。但是Go也提供了一些其他的方式,简短声明,可以很方便的定义变量。

user := "root"
pwd := "123456"
age := 3

无需写var和变量类型,Go会自行处理,当然不同类型的变量也可以写在同一行: user, pwd, age := "root", "123456", 3

同样的给多个不同类型的变量赋值也可以使用这种方式: user, pwd, age := "root", "123456", 3

Go语言的变量暂时就研究到这里吧,还有一点。Go语言是强类型语言,和Lua PHP 这样的语言不同,一个变量定义完毕后就只能是这个类型,这个也很好理解。

在C语言中 int c = 0; c = "abc"; 这样的肯定会报错了,但是PHP中 $c = 0; $c = "abc"; 完全OK。

原文地址:https://www.cnblogs.com/hatsusakana/p/9809199.html