闭包 :一个函数和与其相关的引用环境组合的一个整体。
最佳实践 :编写一个程序,具体要求如下:
makeSuffix(suffix string)
文件名.jpg
strings.HasSuffix
代码如下:
package main import ( "fmt" "strings" ) func makesuffix(suffix string) func(string) string { return func(name string) string { //如果name没有指定的后缀,则加上,否则就返回原来的名字 if !strings.HasSuffix(name, suffix) { return name + suffix } return name } } func main() { f2 :=makesuffix(".jpg") fmt.Println("文件名处理后=", f2("winter")) fmt.Println("文件名处理后=", f2("bird.jpg")) }
执行结果如下图所示:
Go语言 闭包的最佳实践 (Golang经典编程案例)介绍到这里,更多Go学习请参考编程字典Go教程 和问答部分,谢谢大家对编程字典的支持。
原文链接:https://blog.csdn.net/cui_yonghua/article/details/93645557?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522163479651116780366526677%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=163479651116780366526677&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_v2~rank_v29-10-93645557.pc_v2_rank_blog_default&utm_term=go&spm=1018.2226.3001.4450