我有一段代碼是這樣的:斯卡拉:如何避免VAR這裏
def until(terminationCond: List[A]=>Boolean, combiner: List[A]=>List[A])(obj: List[A]): A = {
var tempObj = obj
while(!terminationCond(tempObj)) {
tempObj = combiner(obj)
}
tempObj.head
}
我找了一個方式來寫從函數式編程風格這段代碼,避免任何可變類型。
這段代碼'combiner(obj)'根據定義不是FP,因爲它是一個重複使用相同參數但返回不同結果的函數。 – jwvh