2011-08-26 154 views
1

對於下面的Java代碼它dispaly 0E-10作爲輸出爪哇BIGDECIMAL範圍問題

BigDecimal bd = new BigDecimal("00.0000000000"); 
System.out.println(bd); // output is 0E-10 

0E-10是由於BigDecimal的範圍值。但有沒有什麼辦法可以像沒有太多編碼的輸入00.0000000000一樣顯示。?

+0

什麼是「無編碼「應該是什麼意思? – Jacob

+0

這是一個範圍問題?你所看到的是科學記數法。 – amal

+0

好的,有什麼辦法可以避免這種表示法嗎?,,謝謝 –

回答

1

BigDecimal#toPlainString()將給出小數部分。注意它並不確切地滿足您的要求

如果運算格式,使用的DecimalFormat

1
BigDecimal bd = new BigDecimal("00.0000000000"); 
System.out.println(bd.toPlainString()); // output = 0.0000000000 

正如阿邁勒說,你可以簡單地使用BigDecimal.toPlainString():

public String toPlainString() 
    Returns a string representation of this BigDecimal without an exponent field