Go语言开发(3)变量

一、变量声明

1.1 声明一个变量

Go 语言中声明变量使用关键字var,然后变量名,最后变量类型,即

var  变量名  变量类型

如:

var name string
var age int
var isTrue bool

1.2 批量声明变量

Go 语言中可以一次性声明多个变量,使用一个 var 关键字,把变量写到一对小括号中,如下:

var (
	name string
	age int
	isTrue bool
)

二、变量的初始化

2.1 声明变量默认的初始化值

Go 语言中在声明变量的时候,如果不对变量赋值 Go 语言默认会对变量进行初始化,比如字符串类型默认初始化值为 “”,整型变量默认初始化值为0,布尔类型默认初始化值为false,切片、函数、指针类型变量默认初始化值为 nil,如下:

package main

import "fmt"

func main() {
    
    
	var name string
	var age int
	var isTrue bool
	fmt.Println(name)
	fmt.Println(age)
	fmt.Println(isTrue)
}

执行结果为:


0
false

2.2 变量声明时赋值

变量声明时赋值格式如下:

var 变量名  变量类型 = 变量赋值表达式

如下:

package main

import "fmt"

func main() {
    
    
	var name string = "Jack"
	var age int =20
	var isTrue bool = true
	fmt.Println(name)
	fmt.Println(age)
	fmt.Println(isTrue)
}

执行结果为:

Jack
20
true

2.3 类型推导

变量在声明时如果直接赋值可以不指定变量类型,此时 Go 语言会自动从变量的赋值中推导出变量的类型,格式如下:

var 变量名 = 变量值

如下:

package main

import "fmt"

func main() {
    
    
	var name = "Jack"
	var age =20
	var isTrue = true
	fmt.Println(name)
	fmt.Println(age)
	fmt.Println(isTrue)
}

执行结果如下:

Jack
20
true

2.4 一次性给多个变量赋值

Go 语言支持一次性对多个变量进行赋值,如下:

package main

import "fmt"

func main() {
    
    
	var name, age, isTrue = "Jack", 20, true
	fmt.Println(name)
	fmt.Println(age)
	fmt.Println(isTrue)
}

执行结果如下:

Jack
20
true

三、短变量声明

在 Go 语言中,可以通过 := 运算符对变量进行声明,从而不需要使用var关键字,这里需要注意的是,这种用法只能在函数内使用,在函数外是不可以这么使用的,使用格式如下:

变量名 := 变量值

如下:

package main

import "fmt"

func main() {
    
    
	name := "Jack"
	age := 20
	isTrue := true
	fmt.Println(name)
	fmt.Println(age)
	fmt.Println(isTrue)
}

执行结果如下:

Jack
20
true

四、匿名变量

因为 Go 语言中,声明的变量必须使用,因此,当调用函数有多个返回值,匿名变量就很重要了,在 Go 语言中,匿名变量使用 _ 表示

如下:

import "fmt"

func getNameAndAge()(string,int){
    
    
	return "Jack", 20
}

func main() {
    
    
	name, _ := getNameAndAge()
	fmt.Println(name)
}

执行结果为:

Jack

猜你喜欢

转载自blog.csdn.net/redrose2100/article/details/126696921