Click here to Skip to main content
Click here to Skip to main content

Tagged as

Understand Lambda Expressions in 3 minutes

, 5 Mar 2013 CPOL
Rate this:
Please Sign up or sign in to vote.
Lambda expressions short tutorial.
  1. What is a Lambda Expression?
  2. A lambda expression is an anonymous function and it is mostly used to create delegates in LINQ. Simply put, it's a method without a declaration, i.e., access modifier, return value declaration, and name. 

  3. Why do we need lambda expressions? (Why would we need to write a method without a name?)
  4. Convenience. It's a shorthand that allows you to write a method in the same place you are going to use it. Especially useful in places where a method is being used only once, and the method definition is short. It saves you the effort of declaring and writing a separate method to the containing class.

    Benefits: 

    1. Reduced typing. No need to specify the name of the function, its return type, and its access modifier. 
    2. When reading the code you don't need to look elsewhere for the method's definition. 

    Lambda expressions should be short. A complex definition makes the calling code difficult to read. 

  5. How do we define a lambda expression? 
  6. Lambda basic definition: Parameters => Executed code.

Simple example

n => n % 2 == 1 
  • n is the input parameter
  • n % 2 == 1 is the expression

You can read n => n % 2 == 1 like: "input parameter named n goes to anonymous function which returns true if the input is odd".

Same example (now execute the lambda):

List<int> numbers = new List<int>{11,37,52};
List<int> oddNumbers = numbers.where(n => n % 2 == 1).ToList();
//Now oddNumbers is equal to 11 and 37

That's all, now you know the basics of Lambda Expressions.

  • * I didn't mention expression trees/run time advantages of lambda expression due to limited scope.
  • * Reference Lambda Expression tutorial

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

Dan Avidar

United States United States
No Biography provided

Comments and Discussions

 
GeneralMy vote of 5 PinmemberYannisPs5-Nov-14 1:59 
QuestionThank you soooo much PinmemberDon Driskell21-Oct-14 8:53 
GeneralPerfect Article PinmemberBala_Subramani26-Jun-14 2:48 
GeneralMy vote of 5 Pinmembersandeepmgupta10-Jun-14 23:13 
GeneralMy vote of 5 PinmemberDhanu7865-Jun-14 20:36 
QuestionThanks Pinmemberafablulo4-Jun-14 15:06 
GeneralMy vote of 5 PinmemberPaw Møller3-Jun-14 15:07 
QuestionNicely written PinmemberStarsAreUs2-Jun-14 14:28 
QuestionThanks PinmemberAndrew Torrance2-Apr-14 0:48 
QuestionThanks! Pinmemberproloser24-Feb-14 15:30 
QuestionNice but the last link is obsolete Pinmemberrj475625-Jan-14 19:13 
AnswerRe: Nice but the last link is obsolete PinmemberNick Alexeev16-Apr-14 10:25 
GeneralRe: Nice but the last link is obsolete Pinmemberrj475621-Apr-14 19:14 
QuestionMy vote of 5 PinmemberMember 323305517-Dec-13 20:53 
GeneralThe simplest article of confused topic so far. Thank You PinmemberDeepak K Gupta29-Sep-13 11:06 
GeneralMy vote of 5 PinmemberTarun Y Mangukiya2-Sep-13 5:57 
GeneralMy vote of 5 PinprofessionalEdgar ramirez24-Aug-13 8:54 
QuestionSorry... Pinmemberjhewitt999923-Aug-13 12:45 
QuestionNice intro, but could expand PinmemberShaunnyBoy21-Aug-13 3:01 
QuestionNicely explained...Very thanks PingroupChintan.Desai31-Jul-13 19:01 
GeneralMy vote of 5 PinprofessionalBrian A Stephens1-Jul-13 3:33 
GeneralMy vote of 4 PinmemberAdam Nain12-Jun-13 21:08 
GeneralMy vote of 5 PinmemberJavier Prieto12-Jun-13 4:40 
QuestionMy vote of 5 Pinmembervikram00110-Jun-13 22:37 
GeneralMy vote of 5 PinmemberN_cooL5-Jun-13 22:55 
QuestionUnderstand Lambda Expressions PinmemberEndalew26-May-13 16:20 
GeneralMy vote of 5 PinmemberVitorHugoGarcia12-May-13 23:26 
Questionty PinmemberMember 1000908125-Apr-13 14:10 
GeneralMy vote of 5 Pinmemberdu[DE]26-Mar-13 5:28 
GeneralMy vote of 5 PinmemberKRISHNA ANIPINDI25-Mar-13 0:52 
GeneralMy vote of 5 PinmemberGuyThiebaut18-Mar-13 7:27 
GeneralWell Explained PinmemberPratimaG11-Mar-13 6:11 
GeneralMy vote of 4 PinmemberiAmit196-Mar-13 18:36 
QuestionVery well explained PinmemberMember 93414686-Mar-13 7:48 
AnswerRe: Very well explained PinmemberDan Avidar6-Mar-13 8:20 
GeneralMy vote of 5 PinmemberOmid Babaei6-Mar-13 1:33 
GeneralMy vote of 5 Pinmembersconnor28-Jan-13 17:36 
GeneralMy vote of 5 Pinmemberpatil9928-Jan-13 0:15 
GeneralMy vote of 1 PinmemberNemo19665-Dec-12 13:16 
Poor explanation
GeneralRe: My vote of 1 Pinmembercigwork5-Dec-12 22:15 
GeneralRe: My vote of 1 PinmemberRoger Tranchez16-Dec-12 0:35 
QuestionWhat about the link to linqtutorial.net? PinmemberKlaus Luedenscheidt4-Dec-12 20:34 
QuestionCongratulations PinmemberGlen Harvy4-Dec-12 18:51 
GeneralMy vote of 5 PinmemberNosugar4-Oct-12 0:39 
QuestionMy Vote of 5! Pinmemberakosidab19-Jul-12 0:01 
QuestionUnderstand Lambda Expression in 3 min - Wonderfull PinmemberSen K Mathew16-Jul-12 2:11 
GeneralReason for my vote of 5 Great and To the point PinmemberTanzeelurRehman13-Jan-12 1:26 
GeneralReason for my vote of 5 Short and to the point. Very clear a... PinmemberPantelis Chatzinikolis1-Jan-12 16:16 
GeneralReason for my vote of 5 Nice article. Clarifies on the very ... PinmemberAnandachetan Elikapati29-Dec-11 16:44 
GeneralWhat is a declartion? Pinmemberjenkstom20-Dec-11 4:38 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Terms of Use | Mobile
Web03 | 2.8.1411023.1 | Last Updated 5 Mar 2013
Article Copyright 2011 by Dan Avidar
Everything else Copyright © CodeProject, 1999-2014
Layout: fixed | fluid