为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

Go
慕田峪9158850 2021-05-04 17:57:30
在Java中,我可以做类似的事情derp(new Runnable { public void run () { /* run this sometime later */ } })然后稍后在方法中“运行”代码。处理(匿名内部类)很痛苦,但是可以做到。Go是否具有可以促进将函数/回调作为参数传递的内容?
查看完整描述

3 回答

?
慕田峪4524236

TA贡献1875条经验 获得超5个赞

这是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)


}


查看完整回答
反对 回复 2021-05-17
  • 3 回答
  • 0 关注
  • 194 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信