2
我學習Scala,並作爲一個任務,我必須用摺疊生成廉政局的名單:斯卡拉:使用摺疊生成的列表詮釋的
// Generate list of integers by applying f to b until it returns None
def unfold(b: Int, f: Int => Option[(Int, Int)]): IntList = {
f(b) match {
case None => Nil()
case Some((x, y)) => Cons(x,unfold(y, f))
}
}
此展開工作得很好,但現在我不得不寫一個直接的,老實說,我完全失去了什麼?所以我只是隨機開始,但這根本不起作用。一些幫助將不勝感激!
// generate the list of integers from i until j
def fromUntil(i: Int, j: Int): IntList = {
unfold(i, (x: Int) =>if(x < j) Some((j, j - 1)) else None)
}
}
傑羅姆