Sobes.tech
Junior

Na osnovu kojih polja treba napraviti hashCode ako nam je equals zadovoljavajuće?

sobes.tech АИ

Одговор од АИ

Ако је метод equals већ дефинисан и исправно ради, онда hashCode треба да буде заснован на истим пољима која учествују у поређењу у equals. Ово је неопходно за поштовање контракта између equals и hashCode: објекти који су једнаки према equals треба да имају исти hashCode.

На пример, ако equals пореди поља id и name, онда hashCode треба да се израчунава на основу тих истих поља:

@Override
public int hashCode() {
    return Objects.hash(id, name);
}