我正在尝试将小数8.6
呈现为左侧的零填充字符串,即08.6
。
为什么以下内容似乎无效?
double number = 8.6;
String.format("%03.1f", number); //expect "08.6", get "8.6"
格式化字符串似乎是正确的。我究竟做错了什么?
最佳答案
它为您提供了一个左填充零的浮点输出,只是3
的字段宽度包括小数点和小数部分(如果是负数,还包括符号),因此您需要使用%04.1f
代替对于那个特定的价值。
输出:
public class Test {
public static void main(String[] args) {
double number = 8.6;
System.out.println(String.format("%04.1f", number));
}
}
是:
08.6