将double
显示为String
,但如果double
的值是整数,则不显示小数部分的最简单方法是什么?
例如,
如果我有double
值 10.0 ,它将仅显示 10 (无小数部分),但是如果我有double
值 10.35 ,它将显示完整的值 10.35 。
答案 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)
示例:
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"