【发布时间】:2011-05-14 19:37:17
【问题描述】:
如何在 Scala 中返回 函数 side-effecting lexical closure1?
例如,我在看this code sample in Go:
...
// fib returns a function that returns
// successive Fibonacci numbers.
func fib() func() int {
a, b := 0, 1
return func() int {
a, b = b, a+b
return b
}
}
...
println(f(), f(), f(), f(), f())
打印 1 2 3 5 8
我不知道如何在 Scala 中编写相同的代码。
1. Apocalisp评论后更正
【问题讨论】:
标签: function scala return-value go