2012-10-19 42 views
-1

據我所知,您可以設置小數正在打印的浮動做這個%.2f但我只想打印顯著數字:沒有多餘的0在浮點打印?

1.33443 
1.3 
2.00006 
+0

我不明白你所說的「顯著人物」的意思。你能舉一個例子嗎? – m0skit0

+1

定義「顯著數字」 –

+0

讓我不解的問。你想避免在右邊的零? – jddsantaella

回答

2

使用此

double roundTwoDecimals(double d) { 
     DecimalFormat twoDForm = new DecimalFormat("#.##"); 
    return Double.valueOf(twoDForm.format(d)); 

}

+0

由於您使用的是浮點數,因此不能保證所產生的double值仍然只有2位有效數字。這個問題是關於印刷,而不是四捨五入。 – jtahlborn

+0

k then two.DForm.format(d)會給你所需的結果 –

0
public static void main(String [] args) { 
    float f1 = 1.3344300f; 
    float f2 = 1.3000f; 
    float f3 = 2.010f; 

    System.out.println(f1);; 
    System.out.println(f2);; 
    System.out.println(f3);; 
} 

總是打印...

1.33443 
1.3 
2.01