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

PHPz
リリース: 2024-04-23 08:51:01
オリジナル
372 人が閲覧しました

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 }
ログイン後にコピー

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

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

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!