【发布时间】:2012-02-07 20:13:22
【问题描述】:
我在我的应用程序中处理大量双精度值,有没有什么简单的方法可以在 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 将使用“,”或“。”适合小数点分隔符。这在我最近处理的一个项目中引起了一些问题:写入文本框并从中读取错误的值。
-
这就是我非常担心的,我在默认语言环境下阅读了 DecimalFormat。你能告诉我你是如何通过本地化工作的吗?
-
我使用 JFormattedTextFields 进行输入,使用 setValue() 填充它们并使用 getValue() 读取它们。对于需要小数的地方,我使用了 DecimalFormatSymbols 对象。
-
还有一个更简单的方法是使用
Math.round()方法。解决这个问题的话题在这里:link
标签: java