class Example2
{
private int content;
Example2(int content) {
this.content = content;
}
@Override
public boolean equals
(Object obj
) { if (obj == null || !obj.getClass().equals(this.getClass())) {
return false;
}
Example2 other = (Example2)obj;
return this.content == other.content;
}
@Override
public int hashCode() {
return this.content;
}
{
Example2 a = new Example2(42);
Example2 b = new Example2(42);
System.
out.
println(a
== b
? "== Same" : "== Different"); System.
out.
println(a.
equals(b
) ? "equals Same" : "equals Different"); }
}
Y2xhc3MgRXhhbXBsZTIKewoJcHJpdmF0ZSBpbnQgY29udGVudDsKCQoJRXhhbXBsZTIoaW50IGNvbnRlbnQpIHsKCQl0aGlzLmNvbnRlbnQgPSBjb250ZW50OwoJfQoJCglAT3ZlcnJpZGUKCXB1YmxpYyBib29sZWFuIGVxdWFscyhPYmplY3Qgb2JqKSB7CgkJaWYgKG9iaiA9PSBudWxsIHx8ICFvYmouZ2V0Q2xhc3MoKS5lcXVhbHModGhpcy5nZXRDbGFzcygpKSkgewoJCQlyZXR1cm4gZmFsc2U7CgkJfQoJCUV4YW1wbGUyIG90aGVyID0gKEV4YW1wbGUyKW9iajsKCQlyZXR1cm4gdGhpcy5jb250ZW50ID09IG90aGVyLmNvbnRlbnQ7Cgl9CgkKCUBPdmVycmlkZQoJcHVibGljIGludCBoYXNoQ29kZSgpIHsKCQlyZXR1cm4gdGhpcy5jb250ZW50OwoJfQoKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewoJCUV4YW1wbGUyIGEgPSBuZXcgRXhhbXBsZTIoNDIpOwoJCUV4YW1wbGUyIGIgPSBuZXcgRXhhbXBsZTIoNDIpOwoJCVN5c3RlbS5vdXQucHJpbnRsbihhID09IGIgPyAiPT0gU2FtZSIgOiAiPT0gRGlmZmVyZW50Iik7CgkJU3lzdGVtLm91dC5wcmludGxuKGEuZXF1YWxzKGIpID8gImVxdWFscyBTYW1lIiA6ICJlcXVhbHMgRGlmZmVyZW50Iik7Cgl9Cn0=