Pessoal,
Estou construindo uma aplicação financeira em que preciso de resultados exatos, ou seja, não posso ter diferença de centavos.
Contruí a aplicação usando double e, é claro que, o resultado apresentou muitos problemas de centavos.
Achei que utilizar a classe BigDecimal é muito ruim, talvez um pouco complexo, então pensei em armazenar os valores como inteiro (long) e na hora de exibir esses valores eu converteria para decimal, ou seja, dividiria o valor por 100 e editaria com 2 casas decimais.
Comecei a pesquisar e descobri varias opiniões para resolver o problema, mas cada um fala uma coisa diferente do outro. Uns falam que o long também não dá resultados exetos, outros falam que em algumas situações o BigDecimal também não dá resultados exatos.
Gostaria de saber se os resultados de calculos com long são exatos e qual é o melhor caminho a tomar para ter resultados exatos?
A minha preferencia seria usar o long e fazer os cáculos de soma, subtração, divisão e multiplicação antes de editar como valor financeiro. O que vocês acham?
Grato,