Equals() method here i dont get Object obj and this==obj. What is it plis help | Sololearn: Learn to code for FREE!
New course! Every coder should learn Generative AI!
Try a free lesson
+ 1

Equals() method here i dont get Object obj and this==obj. What is it plis help

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; } } class Program { public static void main(String[ ] args) { Animal a1 = new Animal("Robby"); Animal a2 = new Animal("Robby"); System.out.println(a1.equals(a2)); } }

17th Aug 2018, 2:37 PM
stephen haokip
stephen haokip - avatar
2 Answers
0
In animal class constructor: "this.name=n" In equals method: If(this.name==obj.name) return true
17th Aug 2018, 10:33 PM
Hadi Mohseni
Hadi Mohseni - avatar
0
Just edit them
17th Aug 2018, 10:33 PM
Hadi Mohseni
Hadi Mohseni - avatar