首页> 基础笔记 >GoLang基础学习 >函数 函数

Golang匿名函数详解和使用方法

作者:小萝卜 2023-04-06 浏览 294

简介Go支持匿名函数,匿名函数就是没有名字的函数,如果我们某个函数只是希望使用一次,可以考虑使用匿名函数,匿名函数也可以实现多次调用。

介绍

Go支持匿名函数,匿名函数就是没有名字的函数,如果我们某个函数只是希望使用一次,可以考虑使用匿名函数,匿名函数也可以实现多次调用。

匿名函数使用方式1

在定义匿名函数时就直接调用,这种方式匿名函数只能调用一次。

package main
import (
	"fmt"
)

func main() {
	//在定义匿名函数时就直接调用,这种方式匿名函数只能调用一次

	//案例演示,求两个数的和, 使用匿名函数的方式完成
	res1 := func (n1 int, n2 int) int {
		return n1 + n2
	}(10, 20)

	fmt.Println("res1=", res1)
}

匿名函数使用方式2

将匿名函数赋给一个变量(函数变量),再通过该变量来调用匿名函数

package main
import (
	"fmt"
)

func main() {

	//将匿名函数func (n1 int, n2 int) int赋给 a变量
	//则a 的数据类型就是函数类型 ,此时,我们可以通过a完成调用
	a := func (n1 int, n2 int) int {
		return n1 - n2
	}

	res2 := a(10, 30)
	fmt.Println("res2=", res2)
	res3 := a(90, 30)
	fmt.Println("res3=", res3)
}

全局匿名函数

如果将匿名函数赋给一个全局变量,那么这个匿名函数,就成为一个全局匿名函数,可以在程序有效。

package main
import (
	"fmt"
)

var (
	//fun1就是一个全局匿名函数
	Fun1 = func (n1 int, n2 int) int {
		return n1 * n2
	}
)

func main() {
	//全局匿名函数的使用
	res4 := Fun1(4, 9)
	fmt.Println("res4=", res4)
}

 

很赞哦! (0)

文章评论

    高端网站建设