【发布时间】:2011-11-13 22:08:46
【问题描述】:
我做了递归函数,就像
require : L (List[Int])
L 模式匹配
Nil => Thread.dumpStack()x :: xs => print(x) + function(xs)
def function(L : List[Int]) { L match { case Nil => Thread.dumpStack() case x :: xs => print(x + " "); function(xs) } }val l = (1 to 5).toList // 函数(l)
所以我认为这个函数在栈帧n次,但是它出现了一次,我认为这个函数已经找到Nil并打印出异常Thread.dumpStack。
scala 编译器是智能还是其他?
【问题讨论】:
-
-1 请更清楚:提供一个简短的代码示例和一个 REPL 成绩单来说明问题。