0E30 не НУЛЬ

Я не знаю, как обрабатывать new BigDecimal ("0E30") . Его значение 0 , но оно не сравнивается с BigDecimal.ZERO . См. Ниже:

System.out.println(new BigDecimal("0E30").add(BigDecimal.ONE));     // ---> 1
System.out.println(new BigDecimal("0E30").equals(BigDecimal.ZERO)); // ---> false

Может ли кто-нибудь помочь мне сделать сравнение верным (я знаю, что могу найти обходной путь, преобразовав BigDecimal в double , но я хотел бы знать, что происходит)? Я использую JRE 1.6.3. спасибо

5
задан Mysticial 6 January 2012 в 18:46
поделиться