You need to implement toString
in class Person
:
public class Person {
String name;
Person(String str){
name = str;
}
@Override
public String toString() {
return name;
}
}
toString
must return a String representation of the object. Utility methods such as append
invoke toString
on an object to retrieve its textual representation.
From the docs:
Returns a string representation of the object. In general, the
toString method returns a string that "textually represents" this
object. The result should be a concise but informative representation
that is easy for a person to read. It is recommended that all
subclasses override this method.
The toString method for class Object returns a string consisting of
the name of the class of which the object is an instance, the at-sign
character `@', and the unsigned hexadecimal representation of the hash
code of the object. In other words, this method returns a string equal
to the value of:
getClass().getName() + '@' + Integer.toHexString(hashCode())