使用DecimalFormat将double舍入到两位小数

时间:2014-02-28 04:59:07

标签: java format double decimalformat

尝试围绕一个数字,110.99,取消一个百分比,比如10:99.90

目前我正在使用,

public static String GetDiscountedPrice(double OriginalPrice, int PercentDiscount)
{
    DecimalFormat df = new DecimalFormat("##.##");

    double roundedNumber = (OriginalPrice * (PercentDiscount / 100.0));
    roundedNumber = (OriginalPrice - roundedNumber);

    //roundedNumber = Math.round(((roundedNumber * 100.0) / 100.0));
    roundedNumber = Double.valueOf(df.format(roundedNumber));

    String discountedPrice = String.valueOf(roundedNumber);

    return discountedPrice;
}

我的问题是我一直得到99.89的价值。

当我将DecimalFormat更改为(“##。#”)时,它输出99.9。好吧,我需要99.90!

如果不在末尾硬编码'0',我该怎么做呢?

欣赏它。

0 个答案:

没有答案