java中的数字格式

时间:2013-01-22 23:38:14

标签: java formatting string-formatting

有没有办法在java中对double进行格式化,我希望输出为:

预期输出:

如果n = 12.4 => 12.4
如果n = 12.0 - > 12

我在返回时使用了String.valueof(n) 电流输出:
如果n = 12.4 => 12.4
如果n = 12.0 => 12.0

任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:7)

您可以使用DecimalFormat

System.out.println(new DecimalFormat("0.#").format(12.0));

答案 1 :(得分:0)

前段时间我写了这篇文章,并且效果很好

    public static String formattedDouble(double d)
    {
        Long l = (d == Math.floor(d)) ? (long)d : null;
        String str = "";
        if (l == null)
            str += d;
        else
            str += l;
        return str;
    }

答案 2 :(得分:0)

将double格式化为带有两个小数位的字符串使用像这样的代码

String.format("%1$,.2f", doubleValue)

for int使用此

String.format("%d", intValue );