高阶函数

27 阅读1分钟

foreach每一个元素都执行一次 函数

/*
 * foreach
 * 是数组的每一个元素都执行一次 函数
 */
def main(args: Array[String]): Unit = {
  val arr1 = Array(1,2,3,4,5)
  //  arr1.foreach( x => print(x) )
  arr1.foreach(print)
  arr1.foreach(println)
  //  for (i <- arr1){
  //    print(s"${i} ")
  //  }
}
filter
* 过滤器
* filter(函数)
* 如果函数的返回值为true,则元素就保留下来了
/* filter
 *  过滤器
 *  filter(函数)
 * 如果函数的返回值为true,则元素就保留下来了
 **/
def main(args: Array[String]): Unit = {
  // 把数值为偶数的留下来
  val arr1 = Array(1,2,3,4,5)


  val arr2 = arr1.filter(x => x%2==0)
  arr2.foreach(println)

  var score = Array(90,98,60,49,100)
  // 把小于80分的值去掉,只保留大于80分的分数
  score.filter(x => x>80).foreach(println)
}

求数组元素的累加

def main(args: Array[String]): Unit = {

  val arr = Array(1,2,3,4,5)
  // 求数组元素的累加
  val rst = arr.reduce((x,y) => x + y)

  //val rst = arr.sum

  println(s"rst = ${rst}")
  
}