How to override equals() and hashCode() method in java?
@Override
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (obj == null || obj.getClass() != this.getClass()) {
return false;
}
Employee emp = (Employee) obj;
return id == emp.id
&& (firstName == emp.firstName
|| (firstName != null && firstName.equals(emp.getFirstName())))
&& (lastName == emp.lastName || (lastName != null && lastName .equals(emp.getLastName())));
}// equals method ends
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result
+ ((firstName == null) ? 0 :frstName.hashCode());
result = prime * result + id;
result = prime * result
+ ((lastName == null) ? 0 : lastName.hashCode());
return result;
}// hashCode method ends
Is This Answer Correct ? | 0 Yes | 0 No |
What is lambda in java?
Does isempty check for null?
what is the difference between String s="hello"; and String s=new String("hello");?
Can we have a try block without catch block?
what is meta-Inf?
What is java class writing rules?
What is a class instance variable?
What are the wrapped, classes?
How would you dynamically allocate memory to an array?
What is the use join() in Threads ?
How do I know if java is installed?
What is an error in java?