Junior — Middle
What does the hashCode method return in Java?
sobes.tech AI
Answer from AI
The hashCode() method in Java returns an integer value that serves as the hash code of the object. This code is used for quick comparisons and in hash-based collections like HashMap, HashSet, and Hashtable.
Main points:
- If two objects are equal according to
equals(), theirhashCode()must return the same value. - If objects are not equal, hash codes can differ, but collisions should be minimized.
Example of overriding hashCode() along with equals():
@Override
public int hashCode() {
return Objects.hash(field1, field2);
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
MyClass other = (MyClass) o;
return Objects.equals(field1, other.field1) && Objects.equals(field2, other.field2);
}
Thus, hashCode() helps in efficient searching and storing objects in hash-based collections.