回答
lambda
表達式是一個通用術語,可用於許多編程語言,它們的語義有時是不同的。
簡而言之,lambda表達式通常是一個沒有名稱的函數,允許函數作爲第一類對象的語言(即傳遞它們並從函數返回)。
Python的例子:
map(lambda x: x * 2, mylist)
返回與的2倍元素在mylist
(**)
還有Lambda Calculus,這是更數學元素的列表。
(**)到Python較真:我知道名單內涵是在這種情況下更好的,我只是想說明如何使用lambda
的LINQ總是與Lambda表達式相關。在.NET 2.0中,我們有匿名方法的概念,它允許您在不需要編寫委託函數的情況下編寫內聯函數體。 .NET 3.5的Lambda表達式是爲了體現Annonymous函數寫作的概念。
檢查this出。
蘭姆達斯比匿名方法走得更遠;只涵蓋了一半的情景,坦率地說,不那麼有趣的一半。 – 2010-03-29 11:23:11
我是完全同意你的意見,但我只是想給xyz一個非常簡單的介紹。因爲兩條三線你不能解釋Lambda的整個概念。 – 2010-03-29 11:30:51
C#中的Lambdas是一個兩面獸。它們可以運行非常多的like anonymous methods,或者(取決於方法簽名)C#編譯器可以編譯它們into Expression
trees。兩個MSDN鏈接(以前)應該有所幫助;否則像C# in Depth這樣的書可能會爲你點亮幾個燈泡。或者我覆蓋了很多表達式樹(on my blog(or here))。
如果你正在談論他們在LINQ-to-SQL,Entity Framework等中的使用 - 那麼它就是表達樹方面的重要內容;它比匿名方法有更多的侷限性(例如,你不能在.NET 3.5表達式樹中有一個「聲明體」 - .NET 4.0樹支持這一點,但C#4.0編譯器仍然沒有' T)。
兩個很好的介紹到C#lambda表達式:
第(免責聲明 - 我的博客)會給你的基本概念的簡單說明。本書提供了所有相關主題的全面報道。
Lambda表達式是一個包含表達式和函數的匿名函數。它可以用來創建委託或表達式樹。 這裏是一個很好的初學者教程解釋它Lambda expressions in C#
- 1. Lambda教程和解決Lambda函數
- 2. Joomla的好教程?
- 3. FakeItEasy的好教程
- 4. Interop.Excel.PivotTable的好教程
- 5. SlickGrid的好教程?
- 6. eVB的好教程
- 7. GWT DataGrid好的教程?
- 8. 一個好的JFace教程
- 9. 需要TabActivity的好教程
- 10. 良好的DataGridView教程
- 11. 任何好的SharpNEAT教程?
- 12. 好的Cocos2d iphone教程?
- 13. Resharper模板的好教程
- 14. Rails的好javascript教程
- 15. 好的開始CAML教程?
- 16. 好的Silverlight Custom ItemsControl教程
- 17. 好的PyQt教程需要
- 18. 關於XMPP的好教程?
- 19. 好的ASP.net 4 Vb.net教程?
- 20. Flex的良好papervision3D教程?
- 21. jsonlib和jersey的好教程
- 22. Visual Basic 6的好教程?
- 23. 良好的Alfresco教程?
- 24. 你好ListView教程問題
- 25. 好條紋教程/例子?
- 26. Ocamlgraph的任何好的教程?
- 27. 好的教程/ Sammy.js的鏈接
- 28. Hadoop的層疊好的教程
- 29. 一個很好的NASM/FASM教程?
- 30. 需要良好的MVVM教程WPF
請更具體。例如。你使用什麼語言? – 2010-03-29 10:53:29
對不起,我忘了。這是C#。我已經補充說現在 – xyz 2010-03-29 11:02:34
我強烈建議你訪問www.lambdaexpression.net – Delashmate 2011-09-16 10:10:45