Golang のラムダ式

Jay Singh 2023年6月20日
  1. Go の無名関数からの戻り値
  2. Goで匿名関数を使用して領域を返す
Golang のラムダ式

ラムダ式は Golang には存在しないようです。 関数リテラル、ラムダ関数、またはクロージャーは、無名関数の別名です。

ラムダ計算における式の数学的評価は、閉包のアイデアを生み出しました。 匿名関数とクロージャーには技術的な違いがあります。匿名関数は名前のない関数ですが、クロージャーは関数インスタンスです。

この記事では、Go でラムダ式を作成する方法を見ていきます。

Go の無名関数からの戻り値

この例では、sum 変数に無名関数 func(n1,n2 int) int が与えられています。 n1n2 の合計が計算され、関数によって返されます。

例:

package main

import "fmt"

func main() {

    var sum = func(n1, n2 int) int {
        sum := n1 + n2
        return sum
    }
    result := sum(5, 3)
    fmt.Println("Sum is:", result)

}

出力:

Sum is: 8

Goで匿名関数を使用して領域を返す

この例では、無名関数は l*b の面積を返します。

package main

import "fmt"

var (
    area = func(l int, b int) int {
        return l * b
    }
)
func main() {
    fmt.Println(area(10, 10))
}

出力:

100