高阶函数:一种特殊的函数,它的参数、或者是返回值是函数
object scala27 {
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)
}
}
}
object scala27 {
//高阶函数:一种特殊的函数,它的参数、或者是返回值是函数
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)
val arr1= arr.map(x => x * 2)
for(i <- arr1){
println(i)
}
}
}
object scala28 {
//高阶函数:一种特殊的函数,它的参数、或者是返回值是函数
def main(args:Array[String]) :Unit={
//定义一个数组
val arr = Array(-1,2,-3,-4,5)
//提问:把arr中每个元素都变成自己的2倍,并返回一个新数组?
// val fn = (x:Int)=> x * 2
//Array表表示数组,map就是他的方法。
//map 就是一个高阶函数,它的参数是一个函数
//val arr1 = arr.map(fn)
//val arr1= arr.map(x => x * 2)
val arr1 = arr.map(x => if (x >= 0) x else -x)
for(i <- arr1){
println(i)
}
}
}
foreach函数
object scala29 {
def main(args:Array[String]) :Unit={
//定义一个数组
val arr = Array(-1,2,-3,-4,5)
//arr.foreach(x =>{
//print(x)
//})
//依次打印每个元素
arr.foreach(println)
//for(i <- arr1){
//println(i)
}
//}
}
filter函数
任务:在数组中找出元素是偶数的,并组成新数组。
作用:对数组元素使用函数进行过滤。
object scala30 {
def main(args:Array[String]) :Unit={
//定义一个数组
val arr = Array(-1,2,-3,-4,5)
//arr.foreach(x =>{只保留arr中的偶数,并存放在一个新的数组中
//filter的参数是一个函数
// 如果这个函数返回ture,则当前的元素会保留下来。
var arr1 = arr.filter(x => x%2 == 0)
arr1.foreach(println)
//for(i <- arr1){
//println(i)
}
//}
}
def main(args: Array[String]): Unit = {
val arr = Array(100,51,55,67,59,89)
var arr1 = arr.map(x => if(x >= 56 && x <= 59)60 else x)
arr1.foreach(println) } }