Formatting using printf and format
70,034
Solution 1
for "%b" : 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".
Solution 2
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".
Author by
ziggy
Updated on April 13, 2020Comments
-
ziggy about 4 years
In the following program
class ZiggyTest2 { public static void main(String[] args){ double x = 123.456; char c = 65; int i = 65; System.out.printf("%s",x); System.out.printf("%b",x); System.out.printf("%c",c); System.out.printf("%5.0f",x); System.out.printf("%d",i); } }
The output is
123.456trueA 12365
Can someone please explain how a double value (i.e.
123.456
) is converted to a boolean (ie.true
)The reason I ask is because I know java does not allow numbers to be used for boolean values. For example, the following is not allowed in Java
if (5) { //do something }
Thanks