一. 高阶函数
object basic44 {
/*
*高阶函数:一种特殊的函数 它的参数 或者是返回值是函数
*
* Ar
*/
def main(args: Array[String]): Unit = {
//定义一个数组
val arr = Array(1,2,3,4)
//问:把arr中每个元素都变成自己的2倍 并返回一个新数组?
val fn = (x:Int) => x * 2
//Array表示数组 map就是它的方法
//map 就是一个高阶函数 它的参数是一个函数
val arr1 = arr.map(fn)
for (i <- arr1){
println(i)
}
}
}
1.1. test01
//把(1,2,3,4,5)→(1,4,9,16,25)
val arr1 = arr.map(fn)
val arr1 = arr.map(x => x*x)
for (i <- arr1){
println(i)
}
1.2. test02
//把(-1,2,-3,-4)→(1,2,3,4)
val arr = Array(-1,2,-3,-4)
val arr1 = arr.map ( x => if (x >= 0) x else -x) //x的绝对值
for (i <- arr1){
println(i)
}