将Double值格式化为2个小数位的最佳方式

问题:

 可能重复:
Round a double to 2 significant figures after decimal point

我在应用程序中处理很多双重值,是否有任何简单的方法来处理Java中十进制值的格式化?
还有其他更好的做法吗?

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

我想做的基本上是格式双重值,如

23.59004  to 23.59

35.7  to 35.70

3.0 to 3.00

9 to 9.00

回答:

不,没有更好的方法。
其实你的模式有错误。你想要的是:

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

注意"00",意思是exactly两位小数。
如果您使用"#.##"#表示“可选”数字),则将会拖尾为零 – 即new DecimalFormat("#.##").format(3.0d);仅打印"3",而不是"3.00"

 
 
Code问答: http://codewenda.com/topics/python/
Stackoverflow: Best way to Format a Double value to 2 Decimal places

*转载请注明本文链接以及stackoverflow的英文链接

发表评论

电子邮件地址不会被公开。 必填项已用*标注

9 + 1 =