【一 Go 到底】第二十天 --- 闭包
一、闭包
1.1 闭包介绍
闭包就是一个函数
和与其相关的引用环境组合
的一个整体
(实体)闭包
:类函数
:操作n
: 字段
1.2 案例演示
复制代码
2.闭包最佳实践
编写一个函数 makeffix(suffix string)可以接收一个文件后缀名(比如.jpg),并返回一个闭包
调用闭包,可以传入一个文件名,如果该文件名没有指定的后缀(比如.jpg) ,则返回文件名.jpg,如果已经有.jpg 后缀,则返回原文件名。
要求使用闭包的方式完成
strings.HasSuffix 判断是否有指定后缀
复制代码
案例说明
返回的函数和 makeSuffx (suffix string)的 suffx 变量和返回的函数组合成一个闭包,因为返回的函数引用到 suffix 这个变量
闭包的好处,如果使用传统的方法,也可以轻松实现这个功能,但是传统方法需要每次都传入后缀名,比如.jpg ,而闭包因为可以保留上次引用的某个值,所以我们传入一次就可以反复使用。
`
版权声明: 本文为 InfoQ 作者【指剑】的原创文章。
原文链接:【http://xie.infoq.cn/article/c033d849bb18c4c70e5fafe7d】。文章转载请联系作者。
评论