Ich habe ein BigDecimal
Objekt, myNumber
, mit unbekannter Länge. Zum Beispiel: 12345678
.Wie wird ein BigDecimal-Objekt immer im Dezimalformat anstelle der wissenschaftlichen Notation angezeigt?
Ich möchte immer um 1 Million, diese Zahl zu teilen, so dass ich tun:
myNumber.divide(BigDecimal.valueOf(1000000))
ich 12.345678.
Ich möchte dies als eine Zeichenfolge, um „12.345678
“ ohne Dezimal abschneidet setzt.
Ich auch
myNumber.divide(BigDecimal.valueOf(1000000)).toString()
Dies funktioniert mit dem obigen Beispiel in Ordnung. Aber wenn myNumber etwas lächerlich klein oder groß ist, wie zum Beispiel:
0.00000001
Nach dem Teil 0.00000001
von einer Million und String konvertiert, zeigt es als wissenschaftliche Notation, das ist nicht das, was ich will. Ich möchte, dass es immer im vollen Dezimalformat angezeigt wird (in diesem Fall 0.00000000000001
).
Irgendwelche Ideen?
möglich Duplikat von [Warum gibt Java BigDecimal 1E + 1 zurück?] (Http://stackoverflow.com/questions/925232/why-does-java-bigdecimal-return-1e1) – polygenelubricants