scala高阶函数(三)

44 阅读1分钟

高阶函数定义

一种特殊的函数,他的参数或者返回值是函数类型

(一)map函数

  • 通过对数组的每一个元素应用一个函数来构建一个新数组
  • 语法:新数组 = 旧数组.map(旧元素=>新元素)
object basss122 {

def main(args:Array[String]):Unit={
     val arr1=Array(1,2,3,4,5,6)
     //Array是一个构造器,用来定义一个数组。
     //arr1就是一个数组对象,它有很多的方法,其中就有map.
     //for循环来输出数组中每个元素
     val fn=(x:Int)=>x*2
     //fn是一个函数,它被传递给了map.map是一个高阶函数
     val arr2 =arr1.map(fn)
     //for 循环来输出数组中每个元素
     for(i<-arr2){
          println(i)
     }
}
}

练习题

把(1,2,3,4,5) → (1,4,9,16,25)

把(-1,2,-3,-4) → (1,2,3,4)

object basss122 {

def main(args:Array[String]):Unit={
     val arr1=Array(1,2,3,4,5,6)
     //Array是一个构造器,用来定义一个数组。
     //arr1就是一个数组对象,它有很多的方法,其中就有map.
     //for循环来输出数组中每个元素
     val fn=(x:Int)=>x*x
     //fn是一个函数,它被传递给了map.map是一个高阶函数
     val arr2 =arr1.map(fn)
     //for 循环来输出数组中每个元素
     for(i<-arr2){
          println(i)
     }
     //把(-1,2,-3,-4) → (1,2,3,4)
     val arr3=Array(-1,-2,-3,-4)
     //绝对值
     var arr4 = arr3.map(x=> if(x>0) x else -x)
     println()
     for (i<-arr4) {
          print(s"${i}")
     }

}

}
  • 完结撒花 !!!!!!!!!!
  • 制作不易 希望·一键三连 在此感谢关注的粉丝宝宝
  • 新来的宝宝可以关注下主播哟!!!!!