double value = 345.12345;
字符串格式1
String str = String.format("%.02f", value);
字符串格式2
String str = String.format("%.2f", value);
两个打印相同的值345.12。那么,这两者有什么区别呢?
double value = 345.12345;
字符串格式1
String str = String.format("%.02f", value);
字符串格式2
String str = String.format("%.2f", value);
两个打印相同的值345.12。那么,这两者有什么区别呢?
的syntax for a format specifier是
%[argument_index$][flags][width][.precision]conversion
注意precision
是在第一种情况下02
和2
在第二种情况下,但由于这些是相同的数时,输出是相同的。因此"%.02f"
和"%.2f"
是相同的。
但是,如果你写了%02f
,然后flags
将0
(“零垫输出高达宽”)和width
将2
。然后输出将被填充到指定的宽度。
0前缀符号只适用于整数部分,不适用于小数部分。如果您已经说%07.2f,它会显示值为0345.12。
感谢您的回复! +1从我:) – 2013-03-07 20:02:42
感谢您的帮助! – 2013-03-07 20:02:21