6
A
回答
16
它被稱爲lambda operator in the MSDN docs。
所有lambda表達式使用拉姆達 運算符=>,它讀作 「去 於」。拉姆達 操作者的左側指定輸入 參數(如果有的話),而右側 保持表達式或語句 塊。 lambda表達式x => x * x被讀取爲「x轉到x次x」。
2
如果您在LINQ的背景下,是lamdba operator所說:這 表達式可以如下分配給 委託類型。
如...
var selectedValues = myList.Where(v=>v.Name="Matt");
可以代替delgates在自己的方法使用這些。可能的用途將包括這樣的事情...
void DoWork<T>(T input, Func<T, bool> doAction, Action<T> action)
{
if (doAction(input))
action(input);
}
...上述方法的使用會是什麼樣子......
DoWork(5, i=>i>1, v=>Console.WriteLine(v));
...因爲5大於1,這將顯示5在控制檯上。
3
作爲附帶說明,在紅寶石稱爲「hashrocket」運算符。
0
FWIW,以Ruby開發者,該運營商被稱爲「散列火箭」。 (甚至還有一個company with that name。)
相關問題
- 1. >>操作符/操作數/修飾符是做什麼的?
- 2. 這個操作符是什麼意思?
- 3. 這個操作符是什麼,「??」
- 4. 這個操作符是什麼意思?/=
- 5. 這個操作的好名字是什麼?
- 6. <>操作符的名稱是什麼?
- 7. C中的這個操作是什麼?
- 8. C#=>操作符有什麼作用? (BESIDES是一個lambda操作符)
- 9. 什麼是C++ >>>操作
- 10. 這個字段的名字是什麼?
- 11. 這個F#操作符的典型定義/含義是什麼<*>
- 12. 這個運算符是什麼「=>」?
- 13. 這個文件操作設計模式的名稱是什麼?
- 14. 什麼是JavaScript >>>操作符用於?
- 15. tsql!>操作符有什麼作用?
- 16. - >< - 操作符有什麼作用?
- 17. 這個角色的名字是什麼?
- 18. 這個UIControl的名字是什麼?
- 19. 這個元素的名字是什麼?
- 20. 這個界面的名字是什麼?
- 21. 這個算法的名字是什麼?
- 22. 這個班的名字是什麼?
- 23. 在scalaz中定義的這個@@操作符是什麼?
- 24. 什麼是錯的這個操作符被未定義
- 25. 這個oracle操作符的任務是什麼
- 26. 這個簡單的bash字符串操作的窗口是什麼?
- 27. 在F#中,>>操作符是什麼意思?
- 28. Access中的這個字符是什麼?
- 29. 這是什麼名字?
- 30. 這個字符串拆分操作中的「過濾器」調用是什麼?
拉姆達運營商不僅與LINQ使用。 – Femaref 2010-06-18 20:33:34
我確實相信我的例子表明......我在上下文中說過,因爲他可以在'for(; i => 1;)'的例子中看到一些堅果,並且可能沒有意識到這是一個正常的表達式。更有趣的是,在LINQ中,你也可以執行'。選擇(i =>「New Value」)來創建一組可設置的「New Value」輸入集。 – 2010-06-18 20:42:46
要明確,'=>'不是「lambda表達式」 - 它是*的一部分*。 – 2010-06-18 21:24:39