In the following program
class ZiggyTest2 { public static void main(String[] args){ double x = 123.456; char c = 65; int i
The API documentation seems to clearly state why.
If the argument arg is null, then the result is "false". If arg is a boolean or Boolean, then the result is the string returned by String.valueOf(). Otherwise, the result is "true".