📜  golang function exaple (1)

📅  最后修改于: 2023-12-03 15:01:01.216000             🧑  作者: Mango

Golang 函数示例

在 Golang 中,函数是一个基本的组件,用于执行逻辑和操作数据。本文将为您提供一些Golang函数示例,帮助您快速入门Golang函数的编写。

函数定义

一般情况下,Golang函数的定义如下:

func functionName(parameters) returnType {
	// 函数体
}

其中,参数和返回值类型都是可选的。例如:

// 无参数函数
func sayHello() {
	fmt.Println("Hello World!")
}

// 带参数和返回值的函数
func addNumbers(num1 int, num2 int) int {
	return num1 + num2
}
调用函数

当您定义完函数后,可以通过以下方式进行调用:

func main() {
	// 调用sayHello函数
	sayHello()

	// 调用addNumbers函数
	total := addNumbers(10, 20)
	fmt.Println(total)
}

在上面的例子中,我们可以看到一些函数如何被调用。

函数作为参数

Golang函数还可以作为参数传递给其他函数,例如:

// 一个简单的函数
func sayGoodbye() {
	fmt.Println("Goodbye World!")
}

// 高阶函数 - 接收另一个函数作为参数
func executeFunction(f func()) {
	f()
}

func main() {
	// 把sayGoodbye函数作为参数传递给executeFunction函数
	executeFunction(sayGoodbye)
}

在上面的示例中,我们把 sayGoodbye() 函数作为参数传递给 executeFunction() 函数,然后 executeFunction() 函数调用 sayGoodbye() 函数。

匿名函数

在 Golang 中,您也可以使用匿名函数。匿名函数没有名称,因此它们的主要实际用途是集成到更大或更复杂的代码块中。您可以通过以下方式定义一个匿名函数:

func main() {
	// 定义匿名函数
	func() {
		fmt.Println("Hello World!")
	}()

	// 带参数的匿名函数
	func(name string) {
		fmt.Println("Hello", name)
	}("Mary")
}

在上面的例子中,我们定义和调用了两个匿名函数。

延迟函数

Golang 还提供了一个特殊的内置函数 defer,用于在函数退出前执行一些操作。例如:

func main() {
	fmt.Println("Start")
	defer fmt.Println("Middle")
	fmt.Println("End")
}

在上面的例子中,我们使用 defer 命令在 Golang 函数退出前输出中间信息。

总结

在本文中,我们介绍了一些 Golang 函数示例,包括函数的定义、调用、作为参数、匿名函数以及延迟函数等。希望这篇文章能帮助您更好的了解和使用 Golang 函数。