Golang

关注公众号 jb51net

关闭
首页 > 脚本专栏 > Golang > Golang 匿名函数

Golang中匿名函数的实现

作者:95年的巨蟹

本文主要介绍了Golang中匿名函数的实现,包括直接调用、赋值给变量及定义全局匿名函数三种方式,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧

1.匿名函数介绍

golang支持匿名函数,如果某些函数仅想在特定位置使用一次,那么可以考虑使用匿名函数。
匿名函数也可以实现多次调用。

2.匿名函数使用方式

2.1定义时直接调用

示例代码:

package main
import (
	"fmt"
)

func main() {
	fmt.Println("Hello World!");

	//匿名函数使用方式1:定义时直接调用。
	//(num1 int,num2 int),形参前不写函数名,并在函数后直接调用。
	res := func (num1 int,num2 int) int {
		return num1 + num2
	}(2,3)

	fmt.Printf("res的值为:%v",res)
}

结果:

在这里插入图片描述

2.2将匿名函数赋值给一个变量

示例代码:

package main
import (
	"fmt"
)

func main() {
	fmt.Println("Hello World!");

	//匿名函数使用方式2:将匿名函数赋值给变量,使用变量调用。
	add := func (num1 int,num2 int) int {
		return num1 + num2
	}

	//通过函数变量 调用函数。
	res := add(2,3)

	fmt.Printf("add的类型为:%T,res的值为:%v",add,res)
}

结果:

在这里插入图片描述

add的类型为 函数 func(int,int) int 类型。

2.3定义全局匿名函数

package main
import (
	"fmt"
)

//匿名函数使用方式3:将函数赋值给全局变量。
var Add = func (num1 int,num2 int) int{
	return num1 + num2
}

func main() {
	fmt.Println("Hello World!");

	res := Add(2,3)
	fmt.Printf("Add全局变量的类型:%T,res的类型:%T,res的值为:%v",Add,res,res)

}

结果:

在这里插入图片描述

到此这篇关于Golang中匿名函数的实现的文章就介绍到这了,更多相关Golang 匿名函数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家! 

您可能感兴趣的文章:
阅读全文