It's often convenient or necessary to convert an object to a String
because you need to pass it to a method that accepts only String values.
For example, System.out.println does not accept StringBuffers,
so you need to convert a StringBuffer to a String before you can print it.
The reverseIt method used earlier in this lesson
uses StringBuffer's toString method
to convert the StringBuffer to a String object before returning the String.
class ReverseString {
public static String reverseIt(String source) {
int i, len = source.length();
StringBuffer dest = new StringBuffer(len);
for (i = (len - 1); i >= 0; i--) {
dest.append(source.charAt(i));
}
return dest.toString();
}
}
All classes inherit toString from the Object class
and many classes in the java.lang package override this method to
provide an implementation that is meaningful to that class.
For example, the "type wrapper" classes--Character,
Integer, Boolean,
and the others--all override toString to provide a
String representation of the object.