C'est une autre forme de notation de fonction. Les éléments suivants sont à peu près équivalents:
// explicit function
int MyFunc(int pParam)
{
return pParam;
}
// delegate function
Func<int, int> MyFunc = delegate(int pParam) { return pParam; };
// lambda expression
Func<int, int> MyFunc = x => x;
Considérez une expression lambda comme disant: «donné quelque chose, retournez quelque chose». Dans l'exemple ci-dessus, la fonction x => x
dit "étant donné x, retourne x". (Bien que les expressions lambda n'aient pas nécessairement besoin de renvoyer quelque chose, auquel cas vous pourriez les lire comme "étant donné x, faites quelque chose avec x".)