6

投稿に注ぎます。カップルから始めます。どれだけ集められるか見てみましょう。

次のようなインライン イベント ハンドラを提供するには

button.Click += (sender,args) =>
{
};

コレクション内のアイテムを検索するには

 var dogs= animals.Where(animal => animal.Type == "dog");

次のように、コレクションを反復する場合

 animals.ForEach(animal=>Console.WriteLine(animal.Name));

彼らを来させてください!!

4

7 に答える 7

3

カスタム オブジェクトを返す:

var dude = mySource.Select(x => new {Name = x.name, Surname = x.surname});
于 2008-12-13T13:50:05.960 に答える
2

一行機能

Func<int, int> multiply = x => x * 2;
int y = multiply(4);
于 2008-12-13T20:20:45.280 に答える
2

これは少し異なるものです - これらを(このように)使用して、C# で欠落している "infoof"/"nameof" 演算子をシミュレートできます。つまり、プロパティ名を文字列としてハードコーディングする代わりに、ラムダを使用できます。 . これは、コンパイル時に検証されることを意味します (文字列は検証できません)。

これには明らかにパフォーマンスコストがかかるため、「楽しみのため」ですが、興味深い...

于 2008-12-13T23:12:26.073 に答える
1

マルチスレッドコンポーネントイベントからUIを更新するメソッド呼び出し側を使用

void Task_Progress(object sender,TaskProgressArgs  e)
{
    BeginInvoke(new MethodInvoker(() => UpdateProgress(e)));
}
于 2009-06-20T10:23:30.277 に答える
0

Linqを使用した集計操作の場合:

public Double GetLengthOfElements(string[] wordArr) {

   double count = wordArr.Sum(word => word.Length);
   return count;
}

foreachを使用して確実にビート

于 2008-12-14T12:46:22.623 に答える
0

アキュムレータを作成します。

    static Func<int, int> Foo(int n)
    {
        return a => n += a;
    }

ここでクロージャーの使用法に注意してください。クラスまたはインスタンス変数なしで、呼び出し間の n の値を「記憶」するアキュムレータを作成しています。

于 2008-12-13T14:27:14.247 に答える
-1

名前のない関数を表現する。

于 2008-12-13T17:16:09.067 に答える