2010-10-19 14 views
5

duplicados posibles:
Good tutorials for lambda
Lambda Explanation and what it is as well as a good example
C# Lambda expression, why should I use this?C# Lambda (=>)

Puede alguien explicarme cómo usar esto y dame ejemplos? ¿Cómo lo leemos?

El ejemplo != se lee como "no es igual a". Entonces => significa qué?

+0

http: // msdn.microsoft.com/en-us/library/bb397687.aspx –

+0

Posible duplicado de http://stackoverflow.com/questions/2333560/lamda-explanation-and-what-it-is-as-well-as-a -buen ejemplo. –

+0

'! =' Y '=>' no tienen nada en común, excepto el carácter '='. Pero eso es todo. – FrustratedWithFormsDesigner

Respuesta

5

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 como sigue:

De los docs

el operador => tiene la misma prioridad que para la asignación (=) y es asociativo por la derecha.

6

"=>" es el operador lambda y se lee como "va a"

5

Este es el operador lambda. Lo que significa 'va a'. Se usa para crear expresiones lambda, que es sintaxis ofrecida por C# para métodos anónimos.

por ejemplo. expresión lamda x=>x > 2. Esto significa que dado x, x va al x mayor que 2. En otras palabras, esta expresión lambda se selecciona x mayor que 2.

método anónimo para el mismo se puede escribir como

delegate(int x){return x > 2;} 
+2

Seguramente es el único correcto para decir que seleccionará x mayor que 2 si el lambda se usa como parte de una selección. ¿No sería más exacto decir que volvería verdadero si x> 2 y falso de lo contrario o algo similar? – Chris

+0

tienes razón. Yo confundí a los dos. Buena atrapada – AlwaysAProgrammer