1. 高阶函数介绍
Scala 混合了面向对象和函数式的特性,在函数式编程语言中,函数是“头等公民”,它和Int、String、Class等其他类型处于同等的地位,可以像其他类型的变量一样被传递和操作。也就是说, 如果一个函数的参数列表可以接收函数对象 , 那么这个函数就被称之为 高阶函数 (High-Order Function) .像我们之前学习过的map方法,它就可以接收一个函数,完成List的转换。
常用的高阶函数有以下几类:
- 作为值的函数
- 匿名函数
- 闭包
- 柯里化等等
2. 作为值的函数
在Scala中,函数就像和数字、字符串一样,可以将函数对象传递给一个方法。例如: 我们可以对算法进行封装,然
后将具体的动作传递给方法,这种特性很有用。
示例
需求
将一个整数列表中的每个元素转换为对应个数的小星星, 如下:
List(1, 2