Вы всегда должны использовать функции BigDecimal для выполнения операций с целочисленными значениями.Целое число может быть представлено как BigDecimal, но не всегда наоборот, например, если попытаться привести BigDecimal к целому числу следующим образом:
myBigDecimal.intValueExact () оно выдаст исключение, если вы потеряете информацию.
так что просто делайте так, как вы делаете, и конвертируйте Integer в BigDecimal, а не наоборот, чтобы ничего плохого не случилось.
Вы можете проверить эту ссылку , в ней много информации о BigDecimal и BigInteger в Java.