her*_*man 1 recursion scala
假设您正在编写一个尾递归循环函数来根据某些标准评估元素集合,并希望最终得到最佳得分的元素及其得分.
当然,到目前为止,您将传递最佳得分元素及其得分作为函数的参数.
但由于在递归开始时没有最佳元素,您最初应该将哪些元素作为参数传递给循环函数?不想使用null,您可以将其Option[T]用作参数类型,但是isEmpty当您知道在初始调用之后它始终具有值时,您必须在每次递归时检查.有没有更好的方法?
Option[T]
isEmpty
vpt*_*ron 5
您可以使用list.head作为初始值并循环遍历列表.第一次评估将被"浪费",因为你正在评估list.head反对自己,但这将计算list.head的得分,迭代的其余部分可以继续并做你想要的.
归档时间:
12 年 前
查看次数:
140 次
最近记录:
11 年,12 月 前