scala的一个最主要的特性就是支持函数编程。函数是函数编程中的一等公民:函数可以作为参数传递给其他函数,可以作为其他函数的返回值,甚至可以在其它函数中嵌套。这些高阶函数称为函数值。 举一个简单的例子:从1到某个数求和。使用Java很容易实现: int sum(int max){ int resul... ...
分类:
其他好文 时间:
2016-07-24 10:34:35
阅读次数:
157
1 把函数赋值给变量 >>> f = abs >>> f(-10) 102 高阶函数 def add(x, y, f): return f(x) + f(y)3 map 函数接收两个参数,一个是函数,一个是序列,传入的函数依次作用到序列的每个元素,并把结果作为新的list返回。 4 reduce。r ...
分类:
编程语言 时间:
2016-07-22 13:02:28
阅读次数:
179
(笔记范围:第一章 课程介绍;第二章 函数式编程;第三章 模块) Python支持的函数式编程 不是纯函数式编程:允许有变量 支持高阶函数:函数也可以作为变量传入 支持闭包:有了闭包就能返回函数 有限度地支持匿名函数 变量可以指向函数名: 不是纯函数式编程:允许有变量 支持高阶函数:函数也可以作为变 ...
分类:
编程语言 时间:
2016-07-17 11:38:33
阅读次数:
365
匿名函数 ( Anonymous function ) 1. 匿名函数,是指没有被绑定到标识符的函数。根据字面意思,也可以理解为没有名字的函数。 2. 匿名函数通常: 1). 作为参数,被传递给高阶函数。 2). 作为高阶函数的返回值。 3. 在函数式编程语言,以及其他拥有头等函数的语言中,匿名函数 ...
分类:
编程语言 时间:
2016-07-17 11:29:10
阅读次数:
214
1、高阶函数:把函数作为参数传入,这样的函数称为高阶函数。函数式编程就是指这种高度抽象的编程范式。 2、python内建了map() 和 reduce() 3、map()函数接收两个参数:一个函数,一个是序列;map将传入的函数依次作用到序列的每个元素,并把结果作为新的list返回 Eg:函数f(x ...
分类:
其他好文 时间:
2016-07-11 20:50:05
阅读次数:
119
1.1高阶函数变量可指向函数>>>abs(-10)10>>>x=abs--x指向abs函数>>>x(-1)--直接调用x1调用abs和调用x完全相同。函数名也是变量>>>abs=10>>>abs(-10)Traceback(mostrecentcalllast):File"<stdin>",line1,in<module>Ty..
分类:
编程语言 时间:
2016-07-11 01:16:39
阅读次数:
203
序 阅读前言 阅读第一部分 基础知识 阅读第 1 章 面向对象的JavaScript 阅读第 2 章 this、call和apply 阅读第 3 章 闭包和高阶函数 第二部分 设计模式 第 4 章 单例模式 第 5 章 策略模式 第 6 章 代理模式 第 7 章 迭代器模式 第 8 章 发布—订阅模 ...
分类:
编程语言 时间:
2016-06-30 23:18:19
阅读次数:
186
python学习笔记之函数总结--高阶函数以及装饰器Python特点:1、不是纯函数式编程(允许变量存在);2、支持高阶函数(可以传入函数作为变量);3、支持闭包(可以返回函数);4、有限度的支持匿名函数;高阶函数:1、变量可以指向函数;2、函数的参数可以接收变量;3、一个函数..
分类:
编程语言 时间:
2016-06-21 21:02:36
阅读次数:
214
1. 高阶函数的坑 在学习柯里化之前,我们首先来看下面一段代码: 很多同学都能看出来,这些写是非常傻的,因为函数f1和f是等效的,我们直接令var f1 = f;就行了,完全没有必要包裹那么一层。 但是,下面一段代码就未必能够看得出问题来了: 这是我摘自《JS函数式编程指南》中的一段代码,实际上,利 ...
分类:
编程语言 时间:
2016-06-17 00:48:07
阅读次数:
231