reduce:聚合
- reduce函数需要一个函数作为参数,这个函数接受两个相同类型的参数,并返回一个值
object Base59 {
def main(args: Array[String]): Unit = {
var arr = Array(1,2,3,4,5)
var sum = arr.reduce((x, y) => x + y)
println(sum)
}
}
-求最大最小值
object Base60 {
def main(args: Array[String]): Unit = {
var arr = Array(-1,20,30,1)
val max = arr.reduce((x,y) => if(x>y) x else y)
println(max)
val min = arr.reduce((x,y) => if(x<y) x else y)
println(min)
}
}
fold :带初值的reduce
object Base61 {
def main(args: Array[String]): Unit = {
var arr = Array(1,2,3)
val sum = arr.fold(100)((x,y)=>x+y)
println(sum)
}
}
sorted
object Base62 {
def main(args: Array[String]): Unit = {
var arr = Array(-1,20,3,2,50)
var arr1 = arr.sorted
var arr2 = Array("banana","zip","b","a","apple")
var arr3 = arr2.sorted
arr3.foreach(println)
}
}
sortWith
object Base63 {
def main(args: Array[String]): Unit = {
var arr =Array(-1,0,1,3,2)
var arr1 = arr.sortWith((a,b)=>Math.abs(a-3)< Math.abs(b-3))
arr1.foreach(println)
}
}