Fala Herbert, tudo certo?
Muito legal como funcionam as referências, né? E é sempre importante lembrar que quando utilizamos o operador de comparação ==
, são comparados os espaços na memória para onde as referências apontam e, ainda que eles tenham os exatos mesmos valores para seus membros, caso estejam guardados em diferentes espaços na memória a utilização desse operador sempre vai resultar em false
. Para contornar isso e conseguirmos comparar dois diferentes objetos em java, utlizamos o método equals()
!
Para mergulhar ainda mais fundo, indico a leitura do artigo Como comparar objetos em Java!
Um grande abraço e bons estudos!