golang函数闭包实现波费纳契数列

直接看代码

package main

import "fmt"

func fibonacci(s1,s2 int) func() int {
fmt.Println("start with:",s1,s2)
left := s1
right := s2
return func() int {
nest := left + right
left = right
right = nest
return nest
}
}
func main() {
f := fibonacci(0,1)
for i := 0; i < 10; i++ { fmt.Println(f()) }}

相关文章

什么是Go的接口? 接口可以说是一种类型,可以粗略的理解为他...
1、Golang指针 在介绍Golang指针隐式间接引用前,先简单说下...
1、概述 1.1&#160;Protocol buffers定义 Protocol buffe...
判断文件是否存在,需要用到"os"包中的两个函数: os.Stat(...
1、编译环境 OS :Loongnix-Server Linux release 8.3 CPU指...
1、概述 Golang是一种强类型语言,虽然在代码中经常看到i:=1...