Я должен показать значение BigDecimal
как целое, если оно не имеет десятичной части.представляют BigDecimal без десятичной части как целое
Мое решение в целом работает, но проблема в том, когда bigDecResult
получает значение с severals нулями после запятой, как 0.0000
.
BigDecimal bigDecResult = new BigDecimal("0.0000");
if (bigDecResult.remainder(BigDecimal.ONE).equals(0)) {
System.out.println(Integer.toString(bigDecResult.intValue()));
} else {
System.out.println(bigDecResult.toString());
}
Как я могу получить 0
в случае bigDecResult = new BigDecimal("0.0000")
?
Какая версия Java? Существует '.stripTrailingZeros()', к сожалению [это ошибка для всех версий JDK 7 и меньше] (http://stackoverflow.com/q/14772323/1093528) (к счастью, это исправлено в Java 8) – fge