Go 语言可以很灵活的创建函数,并作为值使用。以下实例中我们在定义的函数中初始化一个变量,该函数仅仅是为了使用内置函数 math.sqrt() ,实例为:
package main import ( "fmt" "math" ) func main(){ /* 声明函数变量 */ getSquareRoot := func(x float64) float64 { return math.Sqrt(x) } /* 使用函数 */ fmt.Println(getSquareRoot(9)) }
以上代码执行结果为:
3
--------------------------
函数作为参数传递,实现回调。
package main import "fmt" // 声明一个函数类型 type cb func(int) int func main() { testCallBack(1, callBack) testCallBack(2, func(x int) int { fmt.Printf("我是回调,x:%d\n", x) return x }) } func testCallBack(x int, f cb) { f(x) } func callBack(x int) int { fmt.Printf("我是回调,x:%d\n", x) return x }
没有帐号? 现在注册.