Go语言变量初始化

Go语言变量初始化教程

Go 语言 变量 在定义的时候,如果没有初始化,那么会被赋一个默认值。Go 语言 在声明变量的同时,也可以给变量赋予一个初始值。

短变量声明并初始化详解

语法

变量名 := 表达式

说明

我们可以直接使用 := 的形式来定义变量并初始化,:= 形式的变量声明,左值变量必须是没有定义过的变量,否则会报错。

案例

定义int类型的变量

使用 := 的形式定义 局部变量,如果定义的是数字类型,那么默认类型为 int

package main import ( "fmt" "reflect" ) func main() { max := 100 min := 0 fmt.Println("Hello 嗨客网(www.haicoder.net)") fmt.Println("Max =", max, "Min =", min) fmt.Println("Type Max =", reflect.TypeOf(max), "Type Min =", reflect.TypeOf(min)) }

程序运行后,控制台输出如下:

16 golang int type.png

我们可以看到,程序正确输出了我们定义的两个变量的值。

定义string类型的变量

使用 := 的形式定义局部变量,如果定义的是字符串类型,那么默认类型为 string

package main import ( "fmt" "reflect" ) func main() { name := "HaiCoder" site := "www.haicoder.net" fmt.Println("Hello 嗨客网(www.haicoder.net)") fmt.Println("Name =", name, "Site =", site) fmt.Println("Type name =", reflect.TypeOf(name), "Type site =", reflect.TypeOf(site)) }

程序运行后,控制台输出如下:

17 golang string type.png

我们可以看到,程序正确输出了我们定义的 Name 和 Site 两个变量的值。

已定义过的变量

已定义过的变量,使用 := 的形式定义再次定义,则程序会报错。

package main import ( "fmt" ) func main() { var name = "HaiCoder" name := "HaiCoder" fmt.Println("Hello 嗨客网(www.haicoder.net)") fmt.Println("Name =", name) }

程序运行后,控制台输出如下:

18 golang string type.png

我们可以看到,程序编译报错,因为变量 name 我们一开始已经定义过了,所以下面使用 := 形式声明变量会报错。

Go语言变量总结

Go 语言是静态类型语言,因此变量(variable)是有明确类型的。编译器会检查函数调用中,变量类型的正确性。

使用短变量声明的格式定义变量的语法为:变量名 := 表达式