ViniGodoy 20 de jun. de 2011
sidneivl 20 de jun. de 2011
Mas usando o BigDecimal tenho que refazer todos os meus cálculos usando métodos próprio do BigDecimal?
só tem esse jeito mesmo?
[]'s
mauricioadl 20 de jun. de 2011
tive esse problema recentemente com o banco Oracle e nao teve jeito, teve q ser BigDecimal
ViniGodoy 20 de jun. de 2011
Não é um problema de banco. O problema maior é que floats, são imprecisos.
Na tentativa de multiplicar dois doubles e imprimir no console estou com um erro meio loco, como sou iniciante, espero que alguem possa me dizer alguma maneira de solucionar. Eu multiplico 7.9 * 3.0 e o resultado sai 23.700000000000003, e o certo...
sidneivl 20 de jun. de 2011
Bom, to mudando tudo aqui, hehehe
É que é um mega trabalho, pq estou fazendo um jogo, então imagina quantos cálculos e quantos floats eu tenho, hehehe
mas vamos que vamos.
valeu pela ajuda
rogelgarcia 20 de jun. de 2011
Você nao tem que transformar o número… ele é um só…
A notação nao é do número… e sim da maneira como imprime…
http://download.oracle.com/javase/1.4.2/docs/api/java/text/DecimalFormat.html
(Mas usa double… usa float nao)
sidneivl 20 de jun. de 2011
Mas eu faço cálculos do tipo 100000000 - 0.38 e seu eu tenho um 1.0e9 não consigo subtrair por -0.38, tem que converter do mesmo jeito.
rogelgarcia 21 de jun. de 2011
Então é como vinigodoy falou… BigDecimal…
Mas eu acho que esse número aí… cabe em um double sim…
Reforçando: Se você quer modificar apenas a forma como imprime (cientifica ou decimal) não tem que converter o número… só configurar a impressao do número
Se quer um número gigante… usa BigDecimal