Duplicar posibles:
What is the => token called?¿Cuál es el nombre de este operador =>?
¿Cuál es el nombre de este operador en C#?
Duplicar posibles:
What is the => token called?¿Cuál es el nombre de este operador =>?
¿Cuál es el nombre de este operador en C#?
Se lo conoce como lambda operator in the MSDN docs.
Todas las expresiones lambda utilizan el operador lambda =>, que se lee como "va a ". El lado izquierdo del operador lambda especifica los parámetros de entrada (si corresponde) y el lado derecho contiene la expresión o el bloque de declaración . La expresión lambda x => x * x se lee "x va a x veces x". Este expresión se puede asignar a un tipo delegado de la siguiente manera:
Si usted está hablando en el contexto de LINQ que es un lamdba operator.
Tales como ...
var selectedValues = myList.Where(v=>v.Name="Matt");
Usted puede utilizar éstos en sus propios métodos en lugar del delgates. Los usos posibles incluirían algo como esto ...
void DoWork<T>(T input, Func<T, bool> doAction, Action<T> action)
{
if (doAction(input))
action(input);
}
... el uso del método anterior se vería así ...
DoWork(5, i=>i>1, v=>Console.WriteLine(v));
... porque 5 es mayor que 1, esto mostraría 5 en la consola.
Es el lambda operator.
Como nota al margen, en Ruby se conoce como el operador 'hashrocket'.
FWIW, a los Rubyists, este operador se llama el "cohete hash". (Incluso hay un company with that name.)
Los operadores Lambda no solo se utilizan con LINQ. – Femaref
Creo que mi ejemplo muestra que ... dije en el contexto de que podría haber visto algo loco en un ejemplo como 'for (; i => 1;)' y puede no darse cuenta de que es una expresión normal. Lo más divertido es que en LINQ también puede hacer '.Seleccione (i =>" Nuevo valor ")' para crear un conjunto enumerable de "Nuevo valor" la longitud del conjunto de entrada. –
Para que quede claro, '=>' no es "la expresión lambda" - es * parte * de ella. –