函数式编程中具有普遍意义的3个基本构造单元
来源:互联网 发布:淘宝问大家回答删除 编辑:程序博客网 时间:2024/05/22 06:12
在函数式编程中,有3个常用的基本构造单元。分别是筛选、映射和折叠/化约。下面依次简单概述下,作为学习《函数式编程思维》一书的小小笔记。
一 筛选
筛选(filter)是针对列表的一种过滤操作,筛选出负荷用户自定义条件的条目,并由此产生一个新的列表。因此,新的列表的元素个数会小于等于原列表的元素个数。
可以类比:筛选类似于使用“SELECT”的 SQL语句从数据库中得到符合指定条件的数据。而函数式编程中,使用filter来产生一个子集合。
二 映射
映射(map)操作是对原集合的每一个元素执行给定的函数,用执行后的元素值组成新的集合。在Groovy语言中,相应的函数叫做collect()。
三 折叠/化约
在需要把集合一小块一小块地来处理时,可以使用 reduce和fold操作。
reduce 函数一般在需要设置累积量为某初始值的时候使用,而fold操作初期的累积量是空的。常用在需要从一个集合处理产生另一个大小不同(通常较小但不一定)的集合或单一值的情况。
函数式编程,主要以参数的传递和函数的复合为主要表现手段,无需掌握太多作为“不确定因素”存在的其他语言构造之间的交互规则。
限于时间,本篇没有摘抄代码示例,仅作理论知识小记。
阅读全文
0 0
- 函数式编程中具有普遍意义的3个基本构造单元
- Android中自定义样式与View的构造函数中的第三个参数defStyle的意义
- Android中自定义样式与View的构造函数中的第三个参数defStyle的意义
- Android中自定义样式与View的构造函数中的第三个参数defStyle的意义
- Android中自定义样式与View的构造函数中的第三个参数defStyle的意义
- Android中自定义样式与View的构造函数中的第三个参数defStyle的意义
- Android中自定义样式与View的构造函数中的第三个参数defStyle的意义
- Android中自定义样式与View的构造函数中的第三个参数defStyle的意义
- Android中自定义样式与View的构造函数中的第三个参数defStyle的意义
- Android中自定义样式与View的构造函数中的第三个参数defStyle的意义
- Android中自定义样式与View的构造函数中的第三个参数defStyle的意义
- Android中自定义样式与View的构造函数中的第三个参数defStyle的意义
- Android中自定义样式与View的构造函数中的第三个参数defStyle的意义
- Android中自定义样式与View的构造函数中的第三个参数defStyle的意义
- Android中自定义样式与View的构造函数中的第三个参数defStyle的意义
- Android中自定义样式与View的构造函数中的第三个参数defStyle的意义
- Android中自定义样式与View的构造函数中的第三个参数defStyle的意义
- Android中自定义样式与View的构造函数中的第三个参数defStyle的意义
- Android4.4以后第三方应用无法删除短信的解决方案
- 强大的万能删除代码,
- SAMBA配置 “你可能没有权限访问网络资源”的问题解决方法
- GPRSsim800c
- 聊聊Thrift(四) thrift 服务篇-TNonblockingServer
- 函数式编程中具有普遍意义的3个基本构造单元
- 深入理解Java:注解(Annotation)自定义注解入门
- Android程序猿带你学python第2章--逻辑控制
- 按顺序输出ceo
- 读《大话数据结构》有感
- 4红牌、4蓝牌算法实现
- 最重要的事
- TensorFlow 学习
- 几个String对象的面试题,很经典