Achei que o "==" só comparasse as referências e não o objeto.
Achei que o "==" só comparasse as referências e não o objeto.
Sim! o ==
só compara referências. Mas nesse caso é considerado uma boa prática apenas por ser uma otimização.
Imagine o seguinte:
Integer x = new Integer(5);
x.equals(x);
Essa invocação de equals vai retornar muito rapidamente, pois esse if
interno vai perceber que o objeto que está sendo comparado é ele mesmo! Então nem precisa comparar os atributos desejados! Quando eles se referenciam par ao mesmo objeto, podemos dizer de cara que são equals
!
Acho que entendi. Rsrsrs.