Golang之旅--变量的定义和使用

ぐ巨炮叔叔 提交于 2019-12-06 12:44:04

##前言

不论学习哪种语言,都离不开常见的语法,变量的定义,方法的定义(函数的定义),类的定义,接口的定义(如果语言支持的话)等等。

#通过var定义变量

定义变量并赋值

var name = "liyang" //自动识别类型
var age = 28 
var name string = "liyang" //指定数据类型

####定义变量,但不赋值

var name string 
var age int

####定义多个变量

var name, address string
var name, age = "liyang",28

#通过:=定义参数

使用:=只能在函数中定义参数,也就是说只能定义局部变量,无法定义全局变量。 address := "handan" 如果在函数外使用:=定义参数会报错:syntax error: non-declaration statement outside function body

#全局变量&局部变量

在go中,全局变量即在函数外定义的变量,局部变量即在函数内定义的变量 局部变量如果定义了没有使用会报错:'Error: xxx declared and not used。',我们通过特殊变量名'_'来规避这个错误。 可以在不同的函数代码块中定义相同名称的变量。

常量

在java中我们通过final来指定常量。在go中我们通过关键字const来指定常量 常量也可以像var一样,一次定义多个常量。例如:const a, b, c = 1, 2, 3

###常量块|常量组|枚举 在go中我们可以定义一组常量,有点像java中的枚举,当我们定义所有的常量名为大写(也就是public的时候)即为枚举。

####常量组定义

const ( // 常量组
    a, b      = 10, 100
    c    bool = false
)

####定义一个枚举

const (
    Sunday = iota // 0
    Monday // 1,通常省略后续行表达式。
    Tuesday // 2
    Wednesday // 3
    Thursday // 4
    Friday // 5
    Saturday // 6
)

未使用局部常量,不会像普通局部变量一样报错。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!