为什么我的DecimalFormat在Java中不适用于小数点后2位



我在java中有一个DecimalFormat,当我使用它时,它无法按预期工作。在输入中,我得到了150000,我希望得到15.00作为结果。代码如下:

import java.text.DecimalFormat;
public class MyClass {
public static void main(String args[]) {
long x=150000;
DecimalFormat df = new DecimalFormat("#.##");
System.out.println("x " + x/10000);
long y = x/10000;

System.out.println(df.format(y));
}
}

并且控制台仍然显示15而不是15.00。我在这里错过了什么?顺便说一句,有没有更好的方法来制作这样的格式化程序(同时尝试将15000转换为15.00(?或者,在这种情况下,最好的选择是将其除以10000?感谢您的反馈!

您的模式应该是:

DecimalFormat df = new DecimalFormat("#.00");

因为正如DecimalFormat的javadoc所说:

位置是否本地化是是
符号含义
0数字数字
#数字数字,零显示为不存在

相关内容

  • 没有找到相关文章

最新更新