Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
3
respostas

Dúvida HashCode

Mesmo usando List é necessário sobreescrever o método HashCode ?

3 respostas

Oi Victor

Ao contrário de um HashMap, um ArrayList não precisa usar o método hashCode(), pois a ordem dos elementos em um ArrayList é determinada pela ordem em que foram inseridos, e não por hash.

Olá Otávio Estou falando no sentido de comparação de objetos, no de sobrescrever o método equals(), seria boa pratica sobrescrever o hashCode() mesmo que a implementação de List não utiliza-lo ?

solução!

Oi Victor

o hashCode não é usado diretamente por ArrayList, mas no equals é usado o hashCode para determinar se um objeto está localizado na Lista, portanto sempre que você sobrescrever equals, você deve sobrescrever o hashCode também, uma vez que objetos iguais devem ter o mesmo hashCode.