0

Why is there name.hashcode()...?

name is not object of class animal so why here that statement is used...?? anyone can explain??

10th Sep 2017, 4:30 AM
Vijay Chavda
Vijay Chavda - avatar
2 Answers
+ 3
Hash code is used for string comparison, that code overrides how the hash code is generated, to customize how <name> is compared with other.name. I could be wrong though, Hth, cmiiw
10th Sep 2017, 5:33 AM
Ipang
- 1
class Animal { String name; Animal(String n) { name = n; } @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((name == null) ? 0 : name.hashCode()); return result; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; Animal other = (Animal) obj; if (name == null) { if (other.name != null) return false; } else if (!name.equals(other.name)) return false; return true; } }
10th Sep 2017, 4:38 AM
Vijay Chavda
Vijay Chavda - avatar