實現一個 fibonacci
函數,它返回一個函數(閉包),該閉包返回一個斐波納契數列 `(0, 1, 1, 2, 3, 5, ...)`。
package main
import "fmt"
// 返回一個“返回int的函數”
func fibonacci() func() int {
a:=-1
b:=1
return func() int{
c:=a+b
a=b
b=c
return c
}
}
func main() {
f := fibonacci()
for i := 0; i < 10; i++ {
fmt.Println(f())
}
}