Operadores de comparação (referência do C#)

Os operadores (menor que), (maior que), (menor ou igual a) e (maior ou igual a) também conhecidos como relacionais comparam seus operands. Esses operadores são suportados por todos os tipos numéricos integraise de ponto flutuante.

Observação

Para os operadores ==, <, >, <= e >=, se nenhum dos operandos for um número (Double.NaN ou Single.NaN), o resultado da operação será false. Isso significa que o valor NaN não é superior, inferior nem igual a nenhum outro valor double (ou float), incluindo NaN. Para obter mais informações e exemplos, consulte o artigo de referência Double.NaN ou Single.NaN.

O tipo char também dá suporte a operadores de comparação. No caso de operadores char , os códigos de caractere correspondentes são comparados.

Tipos de enumeração também dão suporte a operadores de comparação. No caso dos operandos do mesmo tipo de enum, os valores correspondentes do tipo integral subjacente são comparados.

Os operadores != e verificam se seus operadores são iguais ou não.

Operador menor que <

O operador < retornará true se o operando à esquerda for menor do que o operando à direita, caso contrário, false:

Console.WriteLine(7.0 < 5.1);   // output: False
Console.WriteLine(5.1 < 5.1);   // output: False
Console.WriteLine(0.0 < 5.1);   // output: True

Console.WriteLine(double.NaN < 5.1);   // output: False
Console.WriteLine(double.NaN >= 5.1);  // output: False

Operador Maior que >

O operador > retornará true se o operando à esquerda for maior do que o operando à direita, caso contrário, false:

Console.WriteLine(7.0 > 5.1);   // output: True
Console.WriteLine(5.1 > 5.1);   // output: False
Console.WriteLine(0.0 > 5.1);   // output: False

Console.WriteLine(double.NaN > 5.1);   // output: False
Console.WriteLine(double.NaN <= 5.1);  // output: False

Operador menor ou igual <=

O operador <= retornará true se o operando à esquerda for menor ou igual ao operando à direita, caso contrário, false:

Console.WriteLine(7.0 <= 5.1);   // output: False
Console.WriteLine(5.1 <= 5.1);   // output: True
Console.WriteLine(0.0 <= 5.1);   // output: True

Console.WriteLine(double.NaN > 5.1);   // output: False
Console.WriteLine(double.NaN <= 5.1);  // output: False

Operador maior ou igual >a =

O operador >= retornará true se o operando à esquerda for maior ou igual ao operando à direita, caso contrário, false:

Console.WriteLine(7.0 >= 5.1);   // output: True
Console.WriteLine(5.1 >= 5.1);   // output: True
Console.WriteLine(0.0 >= 5.1);   // output: False

Console.WriteLine(double.NaN < 5.1);   // output: False
Console.WriteLine(double.NaN >= 5.1);  // output: False

Capacidade de sobrecarga do operador

Um tipo definido pelo usuário pode sobrecarregar os operadores , ><=, e >= .

Se um tipo sobrecarregar um dos operadores < ou >, ele deverá sobrecarregar tanto < quanto >. Se um tipo sobrecarregar um dos operadores <= ou >=, ele deverá sobrecarregar tanto <= quanto >=.

Especificação da linguagem C#

Para obter mais informações, consulte a seção Operadores de teste de tipo e relacional na Especificação da linguagem C#.

Confira também