Índice:
Definição - O que significa Operador de Comparação?
Em C #, um operador de comparação é um operador binário que aceita dois operandos cujos valores estão sendo comparados. Operadores de comparação são usados em instruções condicionais, especialmente em loops, onde o resultado da comparação decide se a execução deve continuar. Eles formam a chave para programar o controle de fluxo, conhecido como processamento condicional.
Os operadores de comparação incluem:
- Operador de igualdade (==), retorna true 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 true se o primeiro operando for menor que o segundo operando.
- Operador maior 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 que ou igual ao operador relacional (<=), definido para todos os tipos numéricos e de enumeração e retorna verdadeiro se o primeiro operando for menor ou igual ao segundo operando.
- Maior que ou igual ao operador relacional (> =), definido para todos os tipos numéricos e de enumeração e retorna true se o primeiro operando for maior que ou igual ao segundo operando.
Operadores de comparação também são conhecidos como operadores relacionais.
Techopedia explica Operador de Comparação
Operadores de comparação têm os seguintes recursos:
- Opere em um tipo de variável e retorne 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 compara apenas referências a objetos e não os dados que eles contêm.
- Pode ser sobrecarregado em tipos definidos pelo usuário, definindo funções de membro estáticas e usando o operador de palavra-chave.
- Deve estar sobrecarregado em pares. Se == estiver sobrecarregado, ! = Deverá estar sobrecarregado. A mesma regra se aplica aos pares <e> e <= e> =.
- A sobrecarga dos operadores de comparação <e> sobrecarrega implicitamente seus operadores de atribuição correspondentes (se houver).
- Se == e! = Estiverem sobrecarregados para um determinado tipo, os métodos Equals () e GetHashCode () deverão ser substituídos.
- Não pode ser usado com estruturas até que o operador esteja sobrecarregado para implementar a lógica para comparação.
No .NET Framework, a classe System.String é usada para ações relacionadas a seqüências de caracteres, 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 para digitação dinâmica, pela qual o compilador pode executar toda a conversão apropriada necessária 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 corrigida 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 a aplicação.