go func

2020.03.01

golang 匿名函数

​ 可赋值给变量,使用变量名调用

1
2
3
4
5
6
7
8

f:=func(){

...

}

f()

​ 闭包

1
2
3
4
5
func(a int){

...

}(1)

​ 匿名函数用作回调函数

​ // 遍历切片的每个元素, 通过给定函数进行元素访问

1
2
3
4
5
6
7
8
9
func visit(list []int, f func(int)) {

for _, v := range list {

f(v)

}

}

// 使用匿名函数打印切片内容

1
2
3
4
5
visit([]int{1, 2, 3, 4}, func(v int) {

fmt.Println(v)

})

​ 封装匿名函数,实现动态调用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
var fMap = map[string]{

"temp" : func(a int){

...

}

}



f := fMap["temp"]

f(1)