標籤:bool 1.0 exe div def can code map math
scala> val arr = Array(1,2)arr: Array[Int] = Array(1, 2)
map
//說明
def map[B, That](f: Int => B)(implicit bf: scala.collection.generic.CanBuildFrom[Array[Int],B,That]): That
scala> def add(a:Int)={ | a * 2 | }add: (a: Int)Intscala> arr.map(add)res17: Array[Int] = Array(2, 4)
scala> arr.map(i => math.pow(i,i)) //傳遞匿名函數
res28: Array[Double] = Array(1.0, 4.0)
foreach:[trait] IndexedSeqOptimized
//說明
scala> arr.foreach override def foreach[U](f: Int => U): Unit
scala> arr.foreach(println)12
filter
//說明
scala> arr.filter def filter(p: Int => Boolean): Array[Int]
scala> val arr = Array(1 to 10:_*)arr: Array[Int] = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)scala> arr.filter(_ % 2 == 0)res45: Array[Int] = Array(2, 4, 6, 8, 10)
reduce:+ 等同 reduceLeft
val res = arr.reduce((a,b) => a+b) 過程如下:
a b
-------------
1 2
3 3
6 4
10 5
res:15
reduce:- 等同 reduceLeft
val res = arr.reduce((a,b) => a-b)
res:-13
reduceRight:+
val res = arr.reduceRight((a,b) => a+b) 過程如下:
a b
-------
4 5
3 9
2 12
1 14
res: 15
reduceRight:-
val res = arr.reduceRight(_-_) 過程如下:a b-------4 53 -12 41 -2res: 3
9-1 Array