1.高阶函数
概念:指使用其他函数作为参数或者返回一个函数作为结果的函数
常见的高阶函数包括map,flatten,flatmap,foreach,reduce
object ddd{
def main(args: Array[String]): Unit = {
//1.高阶函数
var f =(x:Int) => {
val fn = (y:Int) =>x*y
fn
}
val rs = f(10)
println(rs(20))
}
}
2.map函数
需要一个额外的函数作为参数,所以它是一个高阶函数
object dd {
def main(args: Array[String]): Unit = {
//定义一个数组 Array
val arr1 = Array(1,2,3,3,4,5,6)
//输出5
println(arr1(4))
//2.map函数。映射。给我一个值,我给你变成另一个值。 y=x*2
//map函数需要一个额外的函数作为参数,所以它是一个高阶函数
val arr2 =arr1.map(x=> x*2)
for(i <- arr2){
println(i)
}
}
}
3.foreach函数
对数组每一个元素都去执行一次函数
与map函数的区别:它没有返回值
def main(args: Array[String]): Unit = {
var fn =(x:Int)=>{
println(s"$x-----")
}
Array(-1,2,-3,-4).foreach(fn)
Array(-1,2,-3,-4).foreach(println())
}