美文网首页
golang-函数式编程

golang-函数式编程

作者: 爱吃豆包 | 来源:发表于2019-12-17 20:25 被阅读0次

"正统" 函数式编程

不可变性: 不能有状态, 只能有常量和函数

函数只能有一个参数

Go语言可以依赖上面的!

1545057088108_11.png
package main

import "fmt"


// 这相当于就是一个闭包
// 这里 adder 的返回的结果, 不是返回 return 函数, 而是返回 sum 连接的整个树状态的内容
func adder () func(int) int {
    // 这里的变量, 在 return 这边的函数式里面是可以访问的!
    // 这里 sum 相当于, 就是汇聚着所有 return 这边的函数的操作值!
    sum := 0

    // 函数式编程,必须return 函数类型, 因为我的返回值就是函数
    return func(v int) int {
        sum += v
        return sum
    }
}

func main() {

    // 此时 a 获取到的是 adder 函数里面的 return这里的函数
    a := adder()
    for i := 0; i<10; i++ {
        // 既然 a 获取的是 adder 函数里面的 return这里的函数
        // 那么 这里调用的就也就是 return 这里的函数
        fmt.Println(a(i))
    }
}

相关文章

  • golang-函数式编程

    函数式编程 函数式编程有哪些特点函数是一等公民(参数,变量,返回值,都可以是函数) “正统”的函数式编程的特点不可...

  • golang-函数式编程

    "正统" 函数式编程 不可变性: 不能有状态, 只能有常量和函数 函数只能有一个参数 Go语言可以依赖上面的!

  • RxSwift初探(1)

    一、前提:函数响应式编程思想 简单来说 函数响应式编程 = 函数式编程 + 响应式编程 (1)函数式 函数式编程是...

  • iOS 函数编程 & 链式编程

    函数式(链式)编程 函数式编程概念 函数式编程是种编程范式 函数式编程 Functional Programmin...

  • 函数式编程(一)—— 前置知识

    为什么要学函数式编程? 什么是函数式编程?函数式编程和面向对象编程的不同对于函数式编程思维方式的理解: 函数式编程...

  • 二十二、函数式编程、面向协议式编程

    函数式编程(Functional Prigramming) 函数式编程 函数式编程(Functional Prig...

  • Python中的函数式编程

    函数式编程 说到函数式编程,我们的重点在于为什么要采用函数式编程,而不是什么是函数式编程。 函数式编程的优点:一、...

  • RxSwift-初探

    函数响应式编程 一:函数式 函数式编程简称FP(Functional Programming),函数式编程就是一种...

  • 《Kotlin入门实战》CH5 | 函数与函数式编程

    函数与函数式编程 函数式编程与命令式编程最大的不同是:函数式编程的焦点在于数据的映射,命令式编程(imperati...

  • 函数响应式编程思想 & RxSwift 核心逻辑(一)

    函数响应式编程思想 函数响应式编程思想即是将函数式编程和响应式编程相结合。 函数式编程 顾名思义,就是像函数一样的...

网友评论

      本文标题:golang-函数式编程

      本文链接:https://www.haomeiwen.com/subject/bmuenctx.html