Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Dúvida: Comparação entre objetos

Fala André, seguinte:

Nessa aula você passou pra gente um método que recebe por parâmetro um objeto, do tipo ContaCorrente, e devemos verificar se ele consta no vetor, pois caso sim, ele será excluído, certo?

Eu queria entender o motivo de ter sido usado "==" na comparação e não o método Equals(), visto que ContaCorrente é um tipo de referência.

3 respostas
solução!

Leonardo,

Para simplificar sua pertinente dúvida, eu recomendo a leitura de José Carlos Macoratti sobre este paradigma:

==========================================================

C# - Diferenca entre Equals e ==

Os tipos de dados no .Net Framework podem ser classificados de acordo com o fato de uma variável de um tipo específico armazenar seus próprios dados ou um ponteiro para os dados. Se a variável armazena seus próprios dados, é um tipo de valor e se ela contém um ponteiro para dados em outro lugar na memória, é um tipo de referência. Além disso você pode atribuir um tipo de referência ou um tipo de valor a uma variável do tipo de dados Object.

...

https://macoratti.net/18/07/c_equalsop1.htm

==========================================================

Mas se quiser saber outras opiniões... segue outros links... torne-se um Ninja!

==========================================================

C# Equals() vs ==

O == operador é um operador de comparação em C#. O operador == compara as identidades de referência de ambos os operandos. Por outro lado, a função Equals() compara o conteúdo de duas variáveis de string em C#. Normalmente, ambos são usados para comparar dois valores.

...

https://www.delftstack.com/pt/howto/csharp/csharp-equals-vs-/

==========================================================

Equality operators - test if two objects are equal or not

Article - 12/02/2022 - 4 minutes to read

The == (equality) and != (inequality) operators check if their operands are equal or not. Value types are equal when their contents are equal. Reference types are equal when the two variables refer to the same storage.

...

https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/operators/equality-operators

==========================================================

[]'s,

Fabio I.

Opa, valeu Fábio. Vou dar uma conferida nos links, ainda mais que um deles é do Macoratti!

O José Carlos Macoratti é muito bom Recomendo!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software