【问题标题】:Conditional Number Formatting In JavaJava中的条件数字格式
【发布时间】:2008-09-10 15:49:35
【问题描述】:

如何在 Java 中格式化浮点数,以便仅当浮点数不为零时才显示?例如:

123.45 -> 123.45 99.0 -> 99 23.2 -> 23.2 45.0 -> 45

编辑:我忘了提 - 我还在使用 Java 1.4 - 抱歉!

【问题讨论】:

  • DecimalFormat 在 jdk 1.4 中可用。

标签: java java1.4


【解决方案1】:

如果您使用DecimalFormat 并在模式中指定#,它只会显示不为零的值。

查看我的问题How do I format a number in java?

示例代码

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

    double[] doubles = {123.45, 99.0, 23.2, 45.0};
    for(int i=0;i<doubles.length;i++){
        System.out.println(format.format(doubles[i]));
    }

【讨论】:

    【解决方案2】:

    查看DecimalFormat 类,例如new DecimalFormat("0.##").format(99.0) 将返回“99”。

    【讨论】:

      【解决方案3】:
      new Formatter().format( "%f", myFloat )
      

      【讨论】:

        猜你喜欢
        • 2014-02-24
        • 1970-01-01
        • 2011-04-06
        • 2011-08-03
        • 2012-09-30
        • 1970-01-01
        • 2020-08-11
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多