map() 是个高阶函数
Array.map() 接收 函数作为参数 对集合的每个值 调用这个函数
scala> val a = Array(1,2,3,4,5,6,7,8,9)
a: Array[Int] = Array(1, 2, 3, 4, 5, 6, 7, 8, 9)
scala> a.map(x => x*x)
res12: Array[Int] = Array(1, 4, 9, 16, 25, 36, 49, 64, 81)
scala>
scala> a.map(_ * 2)
res13: Array[Int] = Array(2, 4, 6, 8, 10, 12, 14, 16, 18)
完整的写法
scala> a.map((x:Int) => x+1)
res17: Array[Int] = Array(2, 3, 4, 5, 6, 7, 8, 9, 10)
----------------------------------
filter() 是个高阶函数
scala> a.filter(x => x>4)
res23: Array[Int] = Array(5, 6, 7, 8, 9)
scala>
scala> a.filter(_ > 4)
res24: Array[Int] = Array(5, 6, 7, 8, 9)
scala> a.filter(_ > 4).foreach(println)
5
6
7
8
9
----------------------------------
reduce()
scala> val a = Array(1,2,3,4,5,6,7,8,9,10)
a: Array[Int] = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
scala> a.reduce((sum,n)=> sum+n)
res0: Int = 55
scala> a.reduce(_ + _)
res15: Int = 55
scala> a.reduce(_ - _)
res16: Int = -53
scala> a.reduceLeft(_ + _)
res18: Int = 55
scala> a.reduceRight(_ + _)
res19: Int = 55
----------------------------------
sortWith()
scala> val a = Array(9,1,8,2,7,3,6,5,4)
a: Array[Int] = Array(9, 1, 8, 2, 7, 3, 6, 5, 4)
scala> a.sortWith(_ > _)
res13: Array[Int] = Array(9, 8, 7, 6, 5, 4, 3, 2, 1)
scala> a.sortWith(_ < _)
res14: Array[Int] = Array(1, 2, 3, 4, 5, 6, 7, 8, 9)
----------------------------------