C# の Lambda 演算子についての深い理解
C# の Lambda 演算子 ("=>") は、匿名のデリゲートと式本体の作成を簡素化する強力な構文糖です。
ラムダ式
ラムダ式は、デリゲートを明示的に宣言することなく、匿名メソッドに代わるよりクリーンな代替手段を提供します。これらは通常、Func<T, TResult>
や Action<T>
などのデリゲート型の Lambda パラメーターとして使用されます。
たとえば、人の名前を返すデリゲートを作成します。
従来のコミッション作成方法:
<code class="language-csharp">Func<Person, string> nameProjection = delegate (Person p) { return p.Name; };</code>
Lambda 構文を使用して簡略化:
<code class="language-csharp">Func<Person, string> nameProjection = p => p.Name;</code>
式本体メンバー
C# 6 以降、Lambda 構文はプロパティとメソッドの式本体メンバーをサポートするように拡張されました。これにより、従来のコード ブロックを使用せずに、簡略化された式を使用してプロパティまたはメソッドの実装を定義できます。
たとえば、IsValid
属性を定義して、人の名前が空でなく、ID が -1 でないかどうかを確認します。
<code class="language-csharp">public int IsValid => name != null && id != -1;</code>
同様に、GetHashCode
メソッドは Lambda 構文を使用して実装できます。
<code class="language-csharp">public int GetHashCode() => id.GetHashCode();</code>
その他の学習リソース
ディープラーニング:
以上がC# の Lambda 演算子はデリゲートの作成と式本体のメンバーをどのように簡素化できるでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。