Operador de comparação

Definição - o que significa o operador de comparação?

Em C #, um operador de comparação é um operador binário que leva dois operandos cujos valores estão sendo comparados. Operadores de comparação são usados ​​em declarações condicionais, especialmente em loops, onde o resultado da comparação decide se a execução deve continuar. Eles formam a chave para o controle de fluxo do programa, conhecido como processamento condicional.

Os operadores de comparação incluem:

  • Operador de igualdade (==), retorna verdadeiro para operandos cujos valores são iguais.
  • Operador de desigualdade (! =), Retorna falso se dois operandos forem iguais.
  • Operador menor que relacional (), definido para todos os tipos numéricos e de enumeração e retorna verdadeiro se o primeiro operando for maior que o segundo operando.
  • Menor ou igual ao operador relacional (=), definido para todos os tipos numéricos e de enumeração e retorna verdadeiro se o primeiro operando for maior ou igual ao segundo operando.

Os operadores de comparação também são conhecidos como operadores relacionais.

Definirtec explica o operador de comparação

Os operadores de comparação têm os seguintes recursos:

  • Opera em um tipo de variável e retorna um valor do tipo bool.
  • Não pode ser usado diretamente para comparação de objetos do tipo definido pelo usuário. Se usado para comparar objetos, um operador de comparação só compara referências de objeto e não os dados que eles contêm.
  • Pode ser sobrecarregado em tipos definidos pelo usuário, definindo funções de membro estático e usando o operador de palavra-chave.
  • Deve ser sobrecarregado em pares. Se == está sobrecarregado,! = Deve estar sobrecarregado. A mesma regra se aplica aos pares <e> e =.
  • Sobrecarregar os operadores de comparação <e> implicitamente sobrecarrega seus operadores de atribuição correspondentes (se houver).
  • Se == e! = Estão sobrecarregados para um determinado tipo, os métodos Equals () e GetHashCode () devem ser substituídos.
  • Não pode ser usado com structs até que o operador esteja sobrecarregado para implementar a lógica de comparação.

No .NET Framework, a classe System.String é usada para ações relacionadas a strings, como manipulação, comparação e concatenação. Ele sobrecarrega o operador == para verificar a igualdade de conteúdo dos operandos do tipo string e compara a referência do (s) operando (s), se eles não forem do tipo string. A versão 4.0 do .NET Framework fornece o recurso de tipagem dinâmica, por meio da qual o compilador pode realizar todas as conversões apropriadas necessárias para fins de comparação.

Ao comparar objetos com classes aninhadas, a comparação pode ser baseada em uma referência apontando para um objeto aninhado que deve ser comparado (comparação profunda) ou nos valores dos objetos. Essa decisão deve ser fixada no estágio de design de um aplicativo. Para comparação entre números de ponto flutuante, os valores devem ser arredondados para um nível aceitável para o aplicativo.

Esta definição foi escrita no contexto de C #