当有一个集合并且您必须对其所有元素执行两个或多个操作时,哪个更快?:
val f1: String => String = _.reverse
val f2: String => String = _.toUpperCase
val elements: Seq[String] = List("a", "b", "c")
迭代多次并在一个循环上执行一项操作
val result = elements.map(f1).map(f2)
这种方法确实有一个优点,即应用第一个函数后的结果可以被重用。
迭代一次并一起对每个元素执行所有操作
val result = elements.map(element => f2(f1(element)))
或者
val result = elements.map(element => f1.compose(f2)
这两种方法的性能有什么区别吗?如果是,哪个更快?