猿问

函数可以作为参数传递吗?

在Java中,我可以做类似的事情

derp(new Runnable { public void run () { /* run this sometime later */ } })

然后稍后在方法中“运行”代码。处理(匿名内部类)很痛苦,但是可以做到。

Go是否具有可以促进将函数/回调作为参数传递的内容?


慕田峪9158850
浏览 195回答 3
3回答

慕田峪4524236

这是Go中的示例“地图”实现。希望这可以帮助!!func square(num int) int {    return num * num}func mapper(f func(int) int, alist []int) []int {    var a = make([]int, len(alist), len(alist))    for index, val := range alist {        a[index] = f(val)    }    return a}func main() {    alist := []int{4, 5, 6, 7}    result := mapper(square, alist)    fmt.Println(result)}
随时随地看视频慕课网APP

相关分类

Go
我要回答