【go语言】2.1.3 函数的定义和使用
在 Go 语言中,函数是一种代码抽象和复用的方式。函数可以接受参数,执行特定的操作,并返回结果。
函数的定义
函数的定义以 func
关键字开始,后面跟着函数名、参数列表、返回值列表(可选)以及函数体。下面是一个函数定义的例子:
func greet(name string) {
fmt.Println("Hello, " + name)
}
这个函数接受一个类型为 string
的参数 name
,然后输出一句问候语。
函数的调用
你可以通过函数名以及参数列表来调用函数。例如:
greet("Go")
这将输出 "Hello, Go"。
返回值
函数可以返回一个或多个结果。你可以在函数定义中指定返回值的类型,然后使用 return
语句来返回结果。例如:
func add(a int, b int) int {
return a + b
}
这个函数接受两个 int
类型的参数,然后返回它们的和。你可以这样调用它:
result := add(1, 2)
fmt.Println(result) // 输出 3
函数还可以返回多个结果。例如,下面的函数返回两个 int
类型的结果:
func swap(a int, b int) (int, int) {
return b, a
}
你可以这样调用它:
x, y := swap(1, 2)
fmt.Println(x, y) // 输出 2 1
匿名函数和闭包
Go 语言支持匿名函数和闭包。匿名函数就是没有名字的函数,你可以直接定义并调用它。例如:
func() {
fmt.Println("Hello, Go")
}() // 输出 "Hello, Go"
闭包是一个函数和它相关的引用环境组合的一个整体(实体)。闭包可以捕获并存储其外部作用域中的变量,下面是一个创建闭包的例子:
func makeAdder(x int) func(int) int {
return func(y int) int {
return x + y
}
}
adder := makeAdder(1)
fmt.Println(adder(2)) // 输出 3
以上就是 Go 语言中函数的基本使用。函数是 Go 语言中非常重要的部分,通过定义和使用函数,你可以抽象和组织你的代码,使其更易于理解和维护。
推荐阅读: