Java 奇怪舍入与 DecimalFormat

标签 java

double number = Scanner.nextDouble();    
DecimalFormat df = new DecimalFormat("#.#");
        System.out.print (df.format(number));

我已经尝试将上面的数字四舍五入到小数点后一位,但在没有小数的情况下,它似乎四舍五入到一个整数值(例如 2.0 将显示为 2)。我想要 2.0 以及任何其他输入数字以小数点后一位显示。此外,当 DecimalFormat 将负数四舍五入为 0 时,它会将其变为 -0。我该如何解决这些问题?

最佳答案

使用“0.0”作为格式字符串。 # 表示一个数字,如果您看到的是零,则为空白。

要摆脱标志,请看this answer .

关于Java 奇怪舍入与 DecimalFormat,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30458533/

相关文章:

java - Maven war - 无法启动组件 [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/] 构建 Maven war

java - JButton 按下时线程抛出异常

java - 两个 Android 应用程序共享相同的代码库。切换 Android list ?

java - 如何在 Eclipse Helios (Android) 中使用 Subclipse

java - JBoss 7.1.1.Final 的 JSF 实现版本是多少?

java2ws长类路径maven

java - log4j:当日志大小超过定义的阈值时,旋转日志

java - 如何创建 'any'对象的容器

java - 在 StringBuilder 对象中查找某个字母多次出现

java - 如何在引用循环变量的匿名类中在循环中创建线程?