本文主要是介绍跟着google工程师学Go语言(二):Golang变量定义,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
欢迎来到:Google资深工程师深度讲解Go语言
视频地址:Google资深工程师深度讲解Go语言
声明变量的一般形式是使用 var 关键字:var identifier type
示例:
var a int
var b bool
var str string
你也可以改写成这种形式:
var (a intb boolstr string
)
这种因式分解关键字的写法一般用于声明全局变量。
当一个变量被声明之后,系统自动赋予它该类型的零值:int 为 0,float 为 0.0,bool 为 false,string 为空字符串,指针为 nil。记住,所有的内存在 Go 中都是经过初始化的。
变量的命名规则遵循骆驼命名法,即首个单词小写,每个新单词的首字母大写,例如:numShips 和 startDate。
但如果你的全局变量希望能够被外部包所使用,则需要将首个单词的首字母也大写。
- 注:凡是导出包首字母必须大写。
声明与赋值(初始化)语句也可以组合起来。
示例:
var a = 15
var b = false
var str = "Go says hello to the world!"
或:
var (a = 15b = falsestr = "Go says hello to the world!"numShips = 50city string
)
不过自动推断类型并不是任何时候都适用的,当你想要给变量的类型并不是自动推断出的某种类型时,你还是需要显式指定变量的类型,例如:
var n int64 = 2
当你在函数体内声明局部变量时,应使用简短声明语法 :=,例如:
a := 1
其他的简短形式为:
同一类型的多个变量可以声var a, b, c int`识符后面的一个重要原因)
多变量可以在同一行进a, b, c = 5, 7, "abc"
了变量 a,b 和 c 都已经被声明,否则的话应该这样使用:
a, b, c := 5, 7, "abc"
右边的这些值以相同的顺序赋值给左边的变量,所以 a 的值是 5, b 的值是 7,c 的值是 “abc”。
这被称为 并行 或 同时 赋值。
如果你想要交换两个变量的值,则可以简单地使用 a, b = b, a
。
(在 Go 语言中,这样省去了使用交换函数的必要)
空白标识符 _ 也被用于抛弃值,如值 5 在:_, b = 5, 7 中被抛弃。
_ 实际上是一个只写变量,你不能得到它的值。这样做是因为 Go 语言中你必须使用所有被声明的变量,但有时你并不需要使用从一个函数得到的所有返回值。
详细文档参考,GO入门指南:变量
这篇关于跟着google工程师学Go语言(二):Golang变量定义的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!