Nie wiem jak obsługiwać new BigDecimal("0E30")
. Jego wartość to 0
, ale nie porównuje się z BigDecimal.ZERO
. Patrz poniżej:0E30 nie jest ZERO
System.out.println(new BigDecimal("0E30").add(BigDecimal.ONE)); // ---> 1
System.out.println(new BigDecimal("0E30").equals(BigDecimal.ZERO)); // ---> false
Może ktoś mi pomóc dokonać porównania prawdziwe (wiem, że mogę dostać obejście poprzez przekształcenie BigDecimal
s do double
, ale chciałbym wiedzieć, co się dzieje)? Używam środowiska JRE 1.6.3. dzięki