BigDecimal rate = BigDecimal.ZERO;
BigDecimal fixedCost = BigDecimal.ZERO;
int SCALE = 16;
fees. stream.forEach(fee -> {
switch (fee.FeeRateCode) {
case POINT -> rate =rate.add(fee.rateValue().divide(BigDecimal.valueOf(10000), SCALE, RoundingMode.HALF_EVEN))
case SHARE -> rate =rate.add(fee.rateValue().divide(priceValue, SCALE, RoundingMode.HALF_EVEN))
case LOCAL -> fixedCost = fixedCost.add(fee.rateValue().divide(exchangeAmount, SCALE, RoundingMode.HALF_EVEN))
}
}
CostModel.builder().fixedCost(fixedCost).rateValue(rate).build();
Получение ошибки для объявления скорости и фиксированного кода как окончательный/эффективно окончательный. Есть ли какой-нибудь способ исправить это, не объявляя переменную локального уровня/класса, как в потоках Foreach , я получаю модель существующей скорости и FixedCost и обновляю ее на основе дела?CostModel costModel = CostModel.builder().build();
case POINT
-> costModel.rateValue(rate
-> rate.add(fee.rateValue().divide(
BigDecimal.valueOf(10000), SCALE, RoundingMode.HALF_EVEN)))
Подробнее здесь: https://stackoverflow.com/questions/796 ... lue-object