0

我有一个小数点后 2 位的数字:

x = 12.10

现在,我想把它写成String

String string = x.toString(); 

我的输出是:12.1

我怎样才能得到12.10

4

3 回答 3

2

利用DecimalFormat

String formattedNumber = new DecimalFormat("0.00").format(x);
于 2013-09-26T17:20:23.090 回答
0

你可以用String.format()这个。

float x = 12.10;
String myNumStr = String.format("%.2", x);
于 2013-09-26T17:20:57.580 回答
0

使用BigDecimal

public class ConvertNumber {
    public static void main(String[] args) {
        System.out.println(ConvertNumber.convertFloatDecimalToString(12.10f));
        System.out.println(ConvertNumber.convertStringDecimalToString("12.10"));
    }

    /**
     * Convertion for float value
     * 
     * @param number
     * @return
     */
    private static String convertFloatDecimalToString(float number) {
        return new BigDecimal(number).setScale(2, RoundingMode.HALF_DOWN)
                .toString();
    }

    /**
     * Convertion for String
     * 
     * @param number
     * @return
     */
    private static String convertStringDecimalToString(String number) {
        return new BigDecimal(number).setScale(2, RoundingMode.HALF_DOWN)
                .toString();
    }
}
于 2013-09-26T17:36:51.057 回答