请有人向我解释一下,为什么Array.map(f:A => B)方法的实现速度比这段代码快5倍以上:
val list = Array(1, 2, 3, 4, 5, 6, 7, 8, 9)
val newList = new Array[Int](size)
var j = 0
while (j < size) {
newList(j) = list(j)
j += 1
}
Run Code Online (Sandbox Code Playgroud)
Array类中的方法映射(f:A => B)由TraversableLike特性提供,它使用Scala'for循环'迭代输入Array对象的元素,这当然比使用'while循环慢得多".
Scala版本:2.9.2 Java:jdk1.6.0_23 64位窗口