Sobes.tech
Junior — Middle

Pode explicar a finalidade do método hashCode na classe Object em Java e como ele é utilizado?

sobes.tech IA

Resposta da IA

O método hashCode() na classe Object em Java devolve um valor inteiro (código hash) do objeto, que é usado, por exemplo, em tabelas de hash (HashMap, HashSet) para uma pesquisa rápida.

De acordo com o contrato, se dois objetos são iguais segundo o método equals(), então seus hashCode() devem devolver o mesmo valor. Isto é importante para o funcionamento correto das coleções baseadas em hash.

Por padrão, hashCode() devolve um valor associado ao endereço do objeto na memória, mas muitas vezes este método é sobrescrito para considerar o conteúdo do objeto.

Exemplo de sobrescrita:

@Override
public int hashCode() {
    return Objects.hash(field1, field2);
}

Assim, hashCode() ajuda a indexar objetos de forma eficiente nas coleções.