《Golang中的变量学习小结》是一篇介绍Golang变量相关知识的学习笔记。按照惯例,我们先来讲解一下变量的定义和声明,同时介绍一些特殊的变量定义方式。
在Go中,定义一个变量需要使用关键字 var
,例如:
var name string // 声明一个字符串类型的变量name
var age int // 声明一个整数类型的变量age
var isMale bool // 声明一个布尔类型的变量isMale
var salary float32 = 6500.50 // 声明一个浮点型类型的变量salary并赋初值6500.50
也可以使用 :=
来简化变量声明和赋值的过程。例如:
name := "张三" // 声明一个名为name的字符串类型变量并赋值为"张三"
age, height := 18, 170 // 声明多个变量并赋值,age为整数类型,height为整数类型
sex, weight := "男", 60.5 // 声明多个变量并赋值,sex为字符串类型,weight为浮点型类型
请注意: :=
仅能在函数内部使用。如果在函数外部使用,则需要使用 var
声明变量。
在Golang中,我们还可以使用以下方式进行变量的定义:
空指针变量定义:变量声明时,使用 *
指明该变量为指针类型,并且不赋初值,即可得到一个空指针变量。
go
var pname *string // 声明一个空指针变量pname
多重赋值:在Golang中,可以使用一个语句对多个变量进行赋值。
go
age, height := 18, 170 // 声明多个变量并赋值,age为整数类型,height为整数类型
age, sex := 18, "男" // 声明多个变量并赋值,age为整数类型,sex为字符串类型
_, height = 20, 180 // 使用 _ 符号可以丢弃某些返回值
以下是使用Golang进行排序的一个简单示例,其中定义了两个变量 slice 和 sortedSlice:
// 定义一个整型切片
slice := []int{3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5}
// 冒泡排序
for i := 0; i < len(slice)-1; i++ {
for j := i + 1; j < len(slice); j++ {
if slice[i] > slice[j] {
temp := slice[i]
slice[i] = slice[j]
slice[j] = temp
}
}
}
// 定义一个已排序的整型切片
sortedSlice := slice
以上示例中,第一行的slice变量声明并赋值为一个整型切片。在排序过程中,slice进行了改变。最后,将排序后的slice赋值给sortedSlice,定义了一个新的已排序的整型切片。
以下是定义一个函数并使用变量作为函数参数的示例:
func add(a int, b int) int {
return a + b
}
func main() {
var x int = 5 // 定义变量x并赋值为5
var y int = 6 // 定义变量y并赋值为6
var sum int = add(x, y) // 使用函数add计算x和y的和sum
fmt.Println("x + y = ", sum)
}
以上示例中,定义了一个函数add,接收两个整数型变量作为参数,返回它们的和。在main函数中,定义了两个变量x和y,并赋初值为5和6。使用add函数计算x和y的和,并将结果放入变量sum中。
至此,我们通过以上示例,希望读者能够更加深入地理解Golang变量相关知识,并为日后的实际开发工作奠定个好基础!