高阶函数

87 阅读1分钟

1 什么是高阶函数

高阶函数:是一种特殊的函数,特殊之处在于:它指使用其他函数作为参数或者返回值。

Scala的常见高阶函数包括Array.map、flatten、flatmap、foreach、reduce、filter和fold等。

2 map函数

object sss014 {
  def nmain(arge: Array[String]): Unit = {
    val arr = Array(-1,2,-3,-4)
    val arr1 = arr.map(x => if(x>0) x else -x)
    for(i <- arr1){
      println(i)
    }
  }
}

3 filter函数

[练]:去掉不及格的分数:(60,59,80,70) → (60,80,70)

object sss016 {
  def nmain(arge: Array[String]): Unit = {
    val arr = Array(1,2,3,4,5)
    val arr1 = arr.filter(x => x%2 == 0)
    arr1.foreach(println)
  }
}

4 flatten函数

作用:将二维数组中的元素展平至单数组中。

var arr1 = Array(Array(1,2,3), Array(4,5,6))  
println(arr1(0)(0))  
var arr2 = arr1.flatten