Compartilhar via


= > Operador (referência de C#)

O => é chamado de token do operador lambda. Ele é usado no as expressões lambda para separar as variáveis de entrada no lado esquerdo do corpo lambda no lado direito. As expressões lambda são expressões de in-line semelhantes aos métodos anônimos, mas é mais flexível; elas são amplamente usadas em consultas LINQ que são expressos na sintaxe do método. Para obter mais informações, consulte Expressões lambda (guia de programação de C#).

string[] words = { "cherry", "apple", "blueberry" };
int shortestWordLength = words.Min(w => w.Length);
Console.WriteLine(shortestWordLength);
// Output: 5

Comentários

O => operador é lido como "vai para". No exemplo anterior, a expressão é lido como "Min w vai para o comprimento do ponto w".

O => operador tem a mesma precedência de operador de atribuição (=) e é associativos à direita.

Você pode especificar o tipo de variável de entrada explicitamente ou deixar o compilador a inferir em ambos os casos a variável tem rigidez de tipos em tempo de compilação. Quando você especifica um tipo, você deve incluir o nome de tipo e o nome da variável entre parênteses, como mostrado no exemplo a seguir:

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

Diversas variáveis de entrada são colocadas entre parênteses, como mostrado no exemplo neste tópico.

Exemplo

O exemplo a seguir mostra como gravar uma expressão lambda para o operador de consulta padrão Enumerable.Where com duas variáveis de entrada. Essa expressão retorna todas as seqüências de caracteres cujos comprimentos são menos de suas posições de índice na matriz.

string[] digits = { "zero", "one", "two", "three", "four", "five", 
                    "six", "seven", "eight", "nine" };
var shortDigits = digits.Where((digit, index) => digit.Length < index);
foreach (var sD in shortDigits)
{
    Console.WriteLine(sD);
}
// Output:
// five
// six
// seven
// eight
// nine

Consulte também

Referência

Expressões lambda (guia de programação de C#)

Conceitos

C# Programming Guide

Outros recursos

C# Reference