转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/121974841
本文出自【赵彦军的博客】

reduce

从集合左到右,依次计算每个元素累加的结果

示例1:

val array = intArrayOf(1, 2, 3, 4, 5)
val result = array.reduce { acc, i ->acc + i
}Log.d("yyy-ppp", "$result")  //结果:15

示例2:

val array = arrayOf("a", "b", "c", "d", "e")
val result = array.reduce { acc, i ->acc + i
}Log.d("yyy-ppp", "$result") //结果:abcde

示例3:

val array = arrayOf("a", "b", "c", "d", "e")
val result = array.reduce { acc, i ->acc + "," + i
}Log.d("yyy-ppp", "$result")  //结果:a,b,c,d,e

示例4:
数组阶乘

val array = intArrayOf(1, 2, 3, 4, 5)
val result = array.reduce { acc, i ->acc * i
}Log.d("yyy-ppp", "$result")  //结果:120

fold

fold 的作用和 reduce 一样,不同的是 fold 可以设置一个初始值,从 初始值开始累加值,并从左到右对当前累加器值和每个元素应用[操作],reduce没有初始值是第一个元素

示例1:

val array = intArrayOf(1, 2, 3, 4, 5)
val result = array.fold(100) { acc, i ->acc + i
}Log.d("yyy-ppp", "$result")  //结果:115

示例2:

val array = arrayOf("a", "b", "c", "d", "e")
val result = array.fold("m") { acc, i ->acc + i
}Log.d("yyy-ppp", "$result")  //结果:mabcde

Kotlin reduce、fold相关推荐

  1. kotlin之plus、copyOf、reverse、forEach、filter、map、reduce、fold等函数解释和使用

    kotlin之::函数调用.plus(增加元素).copyOf(复制数组).reverse(翻转数组).forEach(遍历数组).filter(过滤数组).map函数操作及扩展.reduce函数.f ...

  2. 秒懂:kotlin 集合操作fold vs reduce

    更多精彩原文: 组件化开花,就问你香不香 架构师之路:重读设计模式<Head First 设计模式> kotlin如何解决java开发痛点,让程序员happier google为何选择ko ...

  3. python函数+定义+调用+多返回值+匿名函数+lambda+高级函数(reduce、map、filter)

    python函数+定义+调用+多返回值+匿名函数+lambda+高级函数(reduce.map.filter) Python 中函数的应用非常广泛,比如 input() .print().range( ...

  4. Python-map、reduce、filter、sorted函数

    map.reduce.filter.sorted函数 Python内置map.reduce.filter.sorted函数. map函数 map函数接受两个参数,一个是函数,一个是Iterable(迭 ...

  5. Python一些特殊用法(map、reduce、filter、lambda、列表推导式等)

    Map函数: 原型:map(function, sequence),作用是将一个列表映射到另一个列表, 使用方法: def f(x): return x**2 l = range(1,10) map( ...

  6. Python高阶函数--map、lambda、reduce、filter、zip

    一.map()函数 map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把list 的每个元素依次作用在函数 f 上,得到一个新的 list 并返回. 例如,对于l ...

  7. Python里的map、reduce、filter、lambda、列表推导式

    Map函数: 原型:map(function, sequence),作用是将一个列表映射到另一个列表, 使用方法: def f(x): return x**2 l = range(1,10) map( ...

  8. 详解Python函数式编程之map、reduce、filter

    map().reduce().filter()是Python中很常用的几个函数,也是Python支持函数式编程的重要体现.不过,在Python 3.x中,reduce()不是内置函数,而是放到了标准库 ...

  9. LeetCode #1349. 参加考试的最大学生数 - 学到了:压缩状态动态规划、位运算、reduce()、str().count()

    赛题见:https://leetcode-cn.com/problems/maximum-students-taking-exam/ 我的解法是用递归实现广度优先搜索,结果是对的,但是太慢,超时了.这 ...

最新文章

  1. 问题.NET--win7 IIS唯一密钥属性“VALUE”设置为“DEFAULT.ASPX”时,无法添加类型为“add”的重复集合...
  2. 移动端页面去除广告注入,例如移动流量图标
  3. python猜数字游戏简单-python猜数字游戏快速求解解决方案
  4. redis类型[string 、list 、 set 、sorted set 、hash]
  5. mysql .pdb是什么文件_超详细讲解如何使用 pdb 在服务器上调试代码
  6. iOS Runtime特性之关联对象
  7. Android开发(二十四)——数据存储SharePreference、SQLite、File、ContentProvider
  8. 什么叫直播秒开?如何实现秒开?
  9. elasticsearch环境搭建与使用
  10. 运维自动化之zabbix(添加Graph screen)(3)
  11. IDEA导入JDK源码
  12. CocosCreator物理引擎Demo源码分析(1)-infinite-world
  13. html金额自动换算成大写,JavaScript实现将人民币小写金额自动转换成大写的方法...
  14. C++_primer_plus学习笔记 第14章 C++中的代码重用
  15. Phyton安装MySQL驱动
  16. Unicable技术在卫星接收方案设计中的应用
  17. AIX小机不能启动故障-src:11002630代码故障的处理
  18. 从国家统计局爬下来的地区信息
  19. 中国首次成功实现4K超高清电视5G网络传输测试
  20. 源码解读之zrender-ZRender 类(3)

热门文章

  1. php的cookie教程,PHP4之COOKIE支持详解
  2. 算法c语言源码_C语言实现推箱子
  3. Android实现相册分享功能,Android系统自带分享功能的实现(可同时分享文字和图片)...
  4. ubuntu mysql 2003_Ubuntu 安装 mysql Ubuntu 安装 mysql 忘记初始密码解决方法
  5. 迷失lost结局什么意思_沉默的真相结局是什么意思?严良为什么把球送给江阳儿子?...
  6. 十三、深入Java的Scanner类
  7. sklearn特征的提取(上)
  8. java线程名_java多线程
  9. 设计模式总结一波点点
  10. 「AI在左,营销在右」互动营销创意破圈,这事儿不难