Go 中的 Lambda 表達式
在 Go 中,lambda 表達式是使用匿名函數實現的。這允許您內聯定義函數,而無需單獨聲明它們。
在 Go 中建立 lambda 表達式非常簡單。只需使用 func 關鍵字,後面接著函數的參數和主體。例如,以下程式碼定義了一個傳回字串的 lambda 表達式:
func foo() string { return "Stringy function" }
Lambda 表達式可以在任何使用普通函數的地方使用。例如,您可以將它們作為參數傳遞給其他函數或將它們儲存在變數中。
以下範例示範如何使用 lambda 表達式將一個函數作為參數傳遞給另一個函數:
func takesAFunction(foo func() string) { fmt.Printf("takesAFunction: %v\n", foo()) }
您也可以使用 lambda 表達式來定義從其他函數傳回的函數。以下範例傳回一個列印字串的 lambda 表達式:
func returnsAFunction() Stringy { return func() string { fmt.Printf("Inner stringy function\n") return "bar" // have to return a string to be stringy } }
如您所見,Go 中的 lambda 表達式是一個強大的工具,可用於建立簡潔且可重用的程式碼。
以上是Lambda 表達式在 Go 中如何運作?的詳細內容。更多資訊請關注PHP中文網其他相關文章!