好吧,我得到这个所有的递归更实用,因为你没有改变迭代中任何对象的状态。但是没有什么能阻止你在scala中做到这一点。斯卡拉递归没有副作用
var magoo = 7;
def mergeSort(xs: List[Int]): List[Int] = {
...
magoo = magoo + 1
mergeSort(xs1, xs2);
}
事实上,你可以递归就像在斯卡拉侧effectless,你可以在Java中。 因此,说Scala只是简化使用模式匹配来编写简洁的递归是否公平呢?就像没有什么能阻止我用Java编写任何无状态的递归代码,我可以在Scala中编写代码?
这点真的是在斯卡拉复杂的递归可以用整洁的代码来实现。 就是这样。 是否正确?