练习:斐波纳契闭包

让我们用函数做些好玩的事情。

实现一个 fibonacci 函数,它返回一个函数(闭包),该闭包返回一个斐波纳契数列 (0, 1, 1, 2, 3, 5, ...)

exercise-fibonacci-closure.go

  1. package main
  2. import "fmt"
  3. // 返回一个“返回int的函数”
  4. func fibonacci() func() int {
  5. }
  6. func main() {
  7. f := fibonacci()
  8. for i := 0; i < 10; i++ {
  9. fmt.Println(f())
  10. }
  11. }