Compartir a través de


Operador => (Referencia de C#)

Actualización: noviembre 2007

El token => se denomina operador lambda. Se utiliza en expresiones lambda para separar las variables de entrada del lado izquierdo del cuerpo lambda del lado derecho. Las expresiones lambda son expresiones insertadas similares a los métodos anónimos, pero más flexibles; se utilizan mucho en las consultas de LINQ que se expresan en la sintaxis del método. Para obtener más información, consulte Expresiones lambda (Guía de programación de C#).

  string[] words = { "cherry", "apple", "blueberry" };
  int shortestWord = words.Min(w => w.Length);

Comentarios

El operador => se lee como "va a". En el ejemplo anterior, la expresión se lee como “Min w va a w punto Length”.

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

Puede especificar explícitamente el tipo de la variable de entrada o permitir que el compilador la infiera; en cualquier caso, la variable tiene establecimiento inflexible de tipos en tiempo de compilación. Al especificar un tipo, debe incluir entre paréntesis el nombre del tipo y el nombre de variable, tal y como se muestra en el ejemplo siguiente:

int shortestWord = words.Min((string w) => w.Length);

Al especificar varias variables de entrada, debe incluirlas entre paréntesis, tal y como se muestra en el ejemplo que aparece más adelante en este tema.

Ejemplo

En el siguiente ejemplo se muestra cómo escribir una expresión lambda para el operador de consulta estándar Enumerable.Where con dos variables de entrada. Esta expresión devuelve todas las cadenas cuyas longitudes son inferiores a sus posiciones de índice en la matriz.

  string[] digits = { "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine" };
  var shortDigits = digits.Where((digit, index) => digit.Length < index);

Vea también

Conceptos

Guía de programación de C#

Referencia

Expresiones lambda (Guía de programación de C#)

Otros recursos

Referencia de C#