C# のラムダ式とは何ですか?

王林
リリース: 2023-09-08 14:25:15
転載
632 人が閲覧しました

C# のラムダ式とは何ですか?

ラムダ式は、匿名メソッドを表すより良い方法です。匿名メソッドとラムダ式の両方でメソッド実装をインラインで定義できますが、匿名メソッドではメソッドのパラメーターの型と戻り値の型を明示的に定義する必要があります。

式ラムダ本体として式を含む式: (入力パラメータ) => 式

本体としてステートメント ブロックを持つステートメント ラムダ: (入力パラメータ) => { }

任意のラムダ式をデリゲート型に変換できます。 ラムダ式を変換できるデリゲートの型は、そのパラメーターと戻り値の型によって定義されます。ラムダ式が値を返さない場合は、Action デリゲート型の 1 つにキャストでき、そうでない場合は、Func デリゲート型の 1 つにキャストできます。

static void Main(string[] args){
   Func<int, int> square = x => x * x;
   Console.WriteLine(square(5));
   Console.ReadLine();
}
ログイン後にコピー

=> 演算子の右側に式を含むラムダ式は、式ラムダと呼ばれます。式ラムダは、次の基本形式で式の結果を返します。

Action line = () => Console.WriteLine();

Funccube = x => x * x * x;

Func testForEquality = (x, y) => x == y;

Func isTooLong = (int x, string s) => s 。長さ > x;

C# 7.0 では、C# 言語はタプルの組み込みサポートを提供します。タプルをラムダ式の引数として指定でき、ラムダ式はタプルを返すこともできます。

ラムダ式で導入された変数は、それを囲んでいるメソッドでは表示されません。

ラムダ式は、囲んでいるメソッドから in、ref、または out パラメータを直接キャプチャすることはできません。

ラムダ式の return ステートメントによって、外側のメソッドが返されることはありません。

Jump ステートメントのターゲットがラムダ式ブロックの外側にある場合、ラムダ式に goto、break、または continue ステートメントを含めることはできません。ターゲットがラムダ式ブロックの内側にある場合、ラムダ式ブロックの外側でジャンプ ステートメントを使用することもエラーとなります。

以上がC# のラムダ式とは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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