Ich möchte Maßstab von zwei BigDecimal Zahlen a
und b
setzen. wie in diesem Beispiel:Runden erforderlich mit BigDecimal Zahlen
BigDecimal a = new BigDecimal("2.6E-1095");
BigDecimal b = new BigDecimal("2.7E-1105");
int i = 112, j=1;
BigDecimal aa = a.setScale(i+j);
BigDecimal bb = b.setScale(i+j);
und wenn ich laufe, ich habe diese Ausnahme:
java.lang.ArithmeticException: Rounding necessary
at java.math.BigDecimal.divideAndRound(BigDecimal.java:1439)
at java.math.BigDecimal.setScale(BigDecimal.java:2394)
at java.math.BigDecimal.setScale(BigDecimal.java:2437)
Warum Rundung notwendig ist? Wenn ich nicht herumkommen möchte, was ist bitte Lösung?
Dank
der Tat ist es eine Überraschung. Ohne auf Docs zu schauen, erwartete ich, dass die Skala auf der Skala abgeschnitten wird ... –