一码理解函数是一等公民


本文摘自网络,作者Atticus,侵删。

package main

import (
    "fmt"
    "strconv"
)

type Attach func(string) string

func (a Attach) loopTimes(n int) string {
    for i := 1; i < n; i ++ {
        a(strconv.Itoa(i))
    }
    return a(strconv.Itoa(n))
}

func newAttach() Attach {
    basic := "Begin"
    return func(s string) string {
        basic = fmt.Sprintf("%s\n%s", basic, s)
        return basic
    }
}

func main() {
    a1 := newAttach()
    fmt.Println(a1.loopTimes(10))
}

输出是:

Begin
1
2
3
4
5
6
7
8
9
10

你理解了么?


相关阅读 >>

Golang如何调试

Golang实现:树形结构返回所有菜单列表

heo算力挖矿平台app搭建,系统开发

聊聊Golang的ddd项目结构

Golang判断key是否存在map中的方法

手撸Golang 基本数据结构与算法 插入排序

马士兵【mca】高级架构师分享学习

gin快速入门

Golang基础-语法介绍

手撸Golang 基本数据结构与算法 图的最短路径 贝尔曼-福特算法

更多相关阅读请进入《Go》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...