/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
this.nome = nome;
}
{
Ideone a = new Ideone("AAA");
Ideone b = new Ideone("BBB");
Ideone c = new Ideone("CCC");
Ideone copiaa = new Ideone("AAA");
System.
out.
println("a & b :" + a.
equals(b
)); System.
out.
println("a & copia a :" + a.
equals(copiaa
));
List<Ideone> lista = new ArrayList<Ideone>();
lista.add(a);
lista.add(b);
System.
out.
println("contains a :" + lista.
contains(a
)); System.
out.
println("contains c :" + lista.
contains(c
)); System.
out.
println("contains a em copia a :" + lista.
contains(copiaa
)); }
@Override
public boolean equals
(Object other
){ if (!(other instanceof Ideone)){
return false;
}
if (other == this){
return true;
}
Ideone temp = (Ideone) other;
return (this.nome.equals(temp.nome));
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKCVN0cmluZyBub21lOwoJCglwdWJsaWMgSWRlb25lKFN0cmluZyBub21lKXsKCQkJdGhpcy5ub21lID0gbm9tZTsKCQl9CgoJcHVibGljIHN0YXRpYyB2b2lkIG1haW4gKFN0cmluZ1tdIGFyZ3MpIHRocm93cyBqYXZhLmxhbmcuRXhjZXB0aW9uCgl7CgkJSWRlb25lIGEgPSBuZXcgSWRlb25lKCJBQUEiKTsKCQlJZGVvbmUgYiA9IG5ldyBJZGVvbmUoIkJCQiIpOwoJCUlkZW9uZSBjID0gbmV3IElkZW9uZSgiQ0NDIik7CgkJSWRlb25lIGNvcGlhYSA9IG5ldyBJZGVvbmUoIkFBQSIpOwoJCQoJCVN5c3RlbS5vdXQucHJpbnRsbigiYSAmIGIgOiIgKyBhLmVxdWFscyhiKSk7CgkJU3lzdGVtLm91dC5wcmludGxuKCJhICYgY29waWEgYSA6IiArIGEuZXF1YWxzKGNvcGlhYSkpOwoJCQoJCUxpc3Q8SWRlb25lPiBsaXN0YSA9IG5ldyBBcnJheUxpc3Q8SWRlb25lPigpOwoJCQoJCWxpc3RhLmFkZChhKTsKCQlsaXN0YS5hZGQoYik7CgkJCgkJU3lzdGVtLm91dC5wcmludGxuKCJjb250YWlucyBhIDoiICsgbGlzdGEuY29udGFpbnMoYSkpOwoJCVN5c3RlbS5vdXQucHJpbnRsbigiY29udGFpbnMgYyA6IiArIGxpc3RhLmNvbnRhaW5zKGMpKTsKCQlTeXN0ZW0ub3V0LnByaW50bG4oImNvbnRhaW5zIGEgZW0gY29waWEgYSA6IiArIGxpc3RhLmNvbnRhaW5zKGNvcGlhYSkpOwoJfQoKCUBPdmVycmlkZQoJcHVibGljIGJvb2xlYW4gZXF1YWxzKE9iamVjdCBvdGhlcil7CgkJaWYgKCEob3RoZXIgaW5zdGFuY2VvZiBJZGVvbmUpKXsKCQkJcmV0dXJuIGZhbHNlOwoJCX0KCgkJaWYgKG90aGVyID09IHRoaXMpewoJCQlyZXR1cm4gdHJ1ZTsKCQl9CgkJCgkJSWRlb25lIHRlbXAgPSAoSWRlb25lKSBvdGhlcjsKCQkKCQlyZXR1cm4gKHRoaXMubm9tZS5lcXVhbHModGVtcC5ub21lKSk7Cgl9Cgp9