【发布时间】:2014-01-31 08:00:16
【问题描述】:
在有关创建斐波那契数的 Stackoverflow 帖子中,我找到了方法 #:: (What is the fastest way to write Fibonacci function in Scala?)。在 ScalaDocs 中,我发现了这个条目(参见此处,1)将哈希冒号冒号方法描述为 一个允许使用 #:: 模式匹配流的提取器。
我意识到我可以像这样使用斐波那契函数
def fibonacci: Stream[Long] = {
def tail(h: Long, n: Long): Stream[Long] = h #:: tail(n, h + n)
tail(0, 1)
}
fibonacci(10) //res4: Long = 55
我应该如何理解 ScalaDocs 的解释?你能再举一个例子吗?
为什么不需要在上面的
fibonacci函数中定义参数?
【问题讨论】:
-
感谢您在标题中添加“哈希冒号冒号”,以便我可以从 Google 中找到此内容:)
标签: scala pattern-matching scala-collections