ホームページ  >  記事  >  バックエンド開発  >  Golang 関数の Lambda パラメータの受け渡し

Golang 関数の Lambda パラメータの受け渡し

PHPz
PHPzオリジナル
2024-04-23 08:51:01376ブラウズ

Go 言語では、ラムダ式パラメータの受け渡しでは矢印構文 (=>) を使用してパラメータの型と戻り値の型を指定し、ラムダ式をパラメータとして他の関数に渡すことができます。このアプローチによりコードが簡素化され、名前付き関数を作成する必要がなくなりました。例: func multiply(fn func(int) int, x int) int { return fn(x); }

Golang 関数の Lambda パラメータの受け渡し

Go 言語関数 Lambda パラメータの受け渡し

ラムダ式は、関数の作成を簡素化する糖衣構文であり、名前付き関数を作成せずに関数を定義できます。 Go 言語では、ラムダ式は次のように func キーワードを使用して定義されます。

func(x int) int { return x * x }

パラメータの受け渡し

ラムダ式を次のように渡す場合パラメータを他の関数に渡すときは、矢印構文 (=>) を使用してパラメータの型と戻り値の型を指定する必要があります。例:

func multiply(fn func(int) int, x int) int {
    return fn(x)
}

この例では、multiply 関数は、ラムダ式 fn と整数 x の 2 つのパラメーターを受け入れます。 multiply 関数は、x をパラメータとしてラムダ式 fn に渡し、結果を返します。

実際的なケース

次は、Lambda パラメータの受け渡しを使用した実際的なケースです:

package main

import "fmt"

func main() {
    // 创建一个 Lambda 表达式来计算平方
    square := func(x int) int { return x * x }

    // 使用 Lambda 表达式作为参数调用 multiply 函数
    result := multiply(square, 5)

    // 输出结果
    fmt.Println(result) // 输出: 25
}

この場合、square Aラムダ式は整数の 2 乗を計算しますが、multiply 関数は square ラムダ式を使用して 5 の 2 乗を計算します。

以上がGolang 関数の Lambda パラメータの受け渡しの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。