我刚开始学习 Scala,所以请耐心等待 :-)
我对 reduceLeft 的行为方式有疑问。这里有一个例子:
List(1, 2, 3, 4, 5) reduceLeft (_ + _)
我想知道是否可以同时进行计算,例如:
第一回合:
- 过程 1 计算:1 + 2
- 过程 2 计算:4 + 5
第二轮:
- 过程 1 计算:3 + 3
第三轮:
- 过程 1 计算:6 + 9
如果我只使用reduce 函数而不是reduceLeft,至少这是我所期望的。或者 reduceLeft 真的一次只做一次减少吗?
((((1 + 2) + 3) + 4) + 5)
这基本上意味着它不能并行执行,如果可能的话,应该总是更喜欢reduce而不是reduceLeft/Right?