【发布时间】:2020-09-17 17:44:15
【问题描述】:
我有这个代码有两个双打:
double a = 2000.01;
double b = 2000.00;
String pattern = "0.##";
DecimalFormat dc = new DecimalFormat(pattern); // <- "0.##" does not work
System.out.println(dc.format(a));
System.out.println(dc.format(b));
需要一个能够产生以下输出的模式:
2000.01
2000.
b 存在小数点,即使不打印零
【问题讨论】:
-
为什么要打印
2000.?这甚至不再是一个数字了。 -
这是一个外部系统的馈送。它们不接受尾随零,也不接受没有小数点的平面数字。
-
鉴于我的示例中的两个双打,他们将接受我打印的字符串。我不能改变他们的接受标准。还有字符串“2000”。以点结尾,而不是零。
-
等一下——你想要
.00来表示整数吗?因为如果是这样,您现有的代码似乎可以正常工作。真的 - 你的问题要求强制使用小数点,所以我以此为基础。
标签: java decimalformat