Mega Code Archive

 
Categories / C# Book / 01 Language Basics
 

0193 lambda Expressions

lambda is an anonymous delegate instance. Suppose we have a delegate: delegate int Calculate(int i); We can create an lambda expression as follows: Calculate c = x => x+1; x is the parameter and x+1 is the method body. Put everything together. using System; delegate int Calculate(int i); class Program { public static void Main() { Calculate c = x => x + 1; Console.WriteLine(c(1)); } } The output: 2 Lambda has the following syntax. (parameters) => expression-or-statement-block The parameters are defined by the delegate and the return type of expression-or-statement-block must be consistant with delegate return type. We can use return type in lambda expression. using System; delegate int Calculate(int i); class Program { public static void Main() { Calculate c = x => {return x + 1;} Console.WriteLine(c(1)); } } The result: 2