当值是整数时,将Double显示为字符串,忽略小数部分

时间:2018-08-03 13:28:44

标签: java

double显示为String,但如果double的值是整数,则不显示小数部分的最简单方法是什么?

例如,
如果我有double 10.0 ,它将仅显示 10 (无小数部分),但是如果我有double 10.35 ,它将显示完整的值 10.35

4 个答案:

答案 0 :(得分:3)

我会使用这种方法:

// 1. Make sure to have dot instead of comma as a separator:
DecimalFormatSymbols symbol = new DecimalFormatSymbols(Locale.US);
// 2. Define max number of decimal places:
DecimalFormat df = new DecimalFormat("#.###", symbol);

// 3. Use it:
System.out.println(df.format(yourNumber));

答案 1 :(得分:2)

只需使用java.text.NumberFormat

示例:

    final NumberFormat numberFormat = NumberFormat.getInstance();
    System.out.println(numberFormat.format( 10.0d ));
    System.out.println(numberFormat.format( 10.35d ));

输出将是:

  

10

     

10,35

答案 2 :(得分:0)

double one = 1.00;
String stringNumber;
if (one % 1 == 0) {
    Integer intOne = (int) one;
    stringNumber = intOne.toString();
} else {
    stringNumber = String.valueOf(one);
}

答案 3 :(得分:0)

这很好:

> d
         1        2          3        4
1 100, 800 200, 900 300, 1,000 400, 800
2       11       22         33       44

> d[[1,1]][2]
[1] "800"