object bais01 {
def main(args: Array[String]): Unit = {
val arr = Array(1,2,3,4,5)
val rst = arr.reduce( (x,y) => x * y)
println(s"rst = ${rst}")
}
}
求最大(小)值
object bais01 {
def main(args: Array[String]): Unit = {
val arr = Array(-1,2,30,5)
//求最大值
val rst_max = arr.reduce( (x,y) => if(x > y) x else y)
// 求最小值
val rst_min = arr.reduce( (x,y) => if(x < y) x else y)
println(s"rst = ${rst_max}")
println(s"rst = ${rst_min}")
}
}
object bais01 {
def main(args: Array[String]): Unit = {
val arr = Array(1,2,3,4)
// reduce ==== reduceLeft
// val rst = arr.reduceLeft((x,y) => x - y)
val rst = arr.reduceRight((x,y) => x - y)
println(s"rst = ${rst}")
}
}
object bais01 {
def main(args: Array[String]): Unit = {
val arr = Array(1,2,3,4)
// reduce ==== reduceLeft
// val rst = arr.reduceLeft((x,y) => x - y)
val rst = arr.fold(10)((x,y) => x + y)
println(s"rst = ${rst}")
}
}
对数值进行排序:从小到大 对字符排序:按照字典顺序
object bais01 {
def main(args: Array[String]): Unit = {
//对数值进行排序:从小到大
Array(-1,20,-100,3,40)
//对字符排序:按照字典顺序
Array("zip","bus","apple","banana","card").sorted.foreach(println)
}
}
对数值进行排序:距离0点的距离大小进行排序
object bais01 {
def main(args: Array[String]): Unit = {
//对数值进行排序:距离0点的距离大小进行排序
// sortWith((x,y) => 布尔值)
// true: x 应该要排在y的前面
// false: x要排在y的后面
Array(-1,2,0,4,9).sortWith((x,y) => Math.abs(x-0) < Math.abs(y-0)).foreach(println)
}
}