2013-06-19 75 views
0

我有一個問題,我正在得到這樣的值。 "0.5"1.0刪除/截斷零的舍入數

BigDecimal bd = new BigDecimal(d).setScale(1, RoundingMode.HALF_EVEN); 
d = bd.doubleValue(); 

如果我得到的值作爲0.5時,我需要顯示,因爲它是。但是當我變得1.0時,我需要將它顯示爲1 instead of 1.0。如果我改變我的setScale(0),我會得到0而不是0.5。

DecimalFormat df = new DecimalFormat("#.0"); 
df.format(0.912385); 

我用十進制格式嘗試過爲sa,E

回答

5

調整模式,使其小數點後抑制非顯著數字

DecimalFormat df = new DecimalFormat("#.#"); 
+0

HAA ..你打我...... +1 :) –

0

使用:

myBiDecimal.stripTrailingZeros() 

但是,要小心,這會變成101e+1

0
if(a % 1 != 0) System.out.println("Is a decimal" + yournumber) 
else System.out.Println("Is not a decimal" + (int) yournumber)