Estou dando manutenção em um extrato que recebe valores negativos e esperava que quando chegasse o valor negativo + negativo ele somasse e manteria o valor negativo estou usando BigDecimal e na formula indicada abaixo quando o valor vem negativo ele esta zerando e o calculo final fica errado: BigDecimal totalRendimentos = totalAtualizacao.subtract(totalAnterior.add(contribuicoes));
contribuicoes é o valor quem deveria vir com a soma negativa.
Procurei uns tutoriais e so encontrei o que ja temia que o bigdecimal não soma negativo ele acaba zerando. vocês conhecem outra forma de respeitar essa informação?
Veja o cálculo para chegar no resultado 8. O que vc acha?
R
Rodrigomazza
Lucas acredito que se o valor chegar negativo da maneira exemplificada por você da o resultado porque não são todos os cliente que reclamam. mas vou acrescentar aqui o trecho onde é feito a soma no caso dos valores negativos.
Seria assim:
BigDecimalA=newBigDecimal("-3");BigDecimalB=newBigDecimal("-3");BigDecimalcontribuicoes=A.add(B);// aqui espero que dê -6 (seis negativo)
L
Lucas_Camara
Dessa forma, esse código realmente retorna -6 em contribuicoes. Para vc dá um resultado diferente?
R
Rodrigomazza
sim ele esta zerando então no caso ele só faz a subtração inicial.
L
Lucas_Camara
Estranho que eu executei aqui e retornou -6, e não zero.