Можно создать дубликат:
What is the => token called?Как называется этот оператор =>?
Что такое имя этого оператора в C#?
Можно создать дубликат:
What is the => token called?Как называется этот оператор =>?
Что такое имя этого оператора в C#?
Он упоминается как lambda operator in the MSDN docs.
Все выражения лямбда использовать оператор лямбда =>, который читается как «идет к». В левой части оператора лямбда указаны параметры ввода (если есть), а правая сторона имеет выражение или оператор блок. Выражение лямбда x => x * x читается «x переходит в x раз x». Это выражение может быть отнесен к типу делегата следующим образом:
Если говорить в контексте 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 на консоли.
Является lambda operator.
Как примечание, в Ruby известно как оператор «hashrocket».
FWIW, для рубистов, этот оператор называется «хеш-ракета». (Есть даже company with that name.)
Лямбда-операторы используются не только с LINQ. – Femaref
Я действительно верю, что мой пример показывает, что ... Я сказал в контексте, потому что он мог бы увидеть что-то орехи в примере, например 'for (; i => 1;)', и может не понимать, что это нормальное выражение. Еще более забавно, что в LINQ вы также можете сделать '.Select (i =>« Новое значение »)', чтобы создать перечислимый набор «New Value» длины набора входных данных. –
Просто, чтобы быть ясным, '=>' не является "выражением лямбда" - это * его часть *. –