Java · Essencial · Inglês · Técnico
equals
Método de Object que define quando dois objetos são iguais em valor. O padrão compara referências; classes como String e Integer o sobrescrevem.
Onde usar
Aparece no bug clássico de comparar Strings com == e no code review de 'sobrescreveu equals, mas esqueceu o hashCode'.
Em código
String a = new String("java");
String b = new String("java");
System.out.println(a == b); // false
System.out.println(a.equals(b)); // trueExemplos
Use equals to compare strings, never ==.
Use equals para comparar strings, nunca ==.
This class overrides equals but not hashCode.
Esta classe sobrescreve equals, mas não hashCode.
Cuidado
O operador == compara se são o mesmo objeto; equals compara o conteúdo, desde que a classe o implemente.