Problemas com float

Bom dia pessoal.

meu problema é o seguinte :

tenho uma aplicação que armazena código do produto e seu valor unitário. Quando realizo uma compra , obtenho do caixa a quantidade comprada pelo produto e faço o cálculo porém a conta nunca da exata.

Coloquei então a variável quantidade que era int e estava multiplicando por um float tb pra float e mesmo assim não tenho precisão nos cálculos.

Não posso ter uma compra que custa ex. 43.5656575

como devo proceder?

abraços

por favor poste o codigo ou parte dele para que possamos lhe ajudar melhor e visualizar o erro

xD

Para cálculos monetários use BigDecimal ao invés de float.

Para fazer contas, normalmente use double (ou dependendo do que você quer fazer, use BigDecimal). Eu normalmente não recomendo usar BigDecimal a torto e a direito sem saber o que está fazendo.

Há apenas um caso no Java em que se deve usar float (não double), e é em algumas APIs obscuras do AWT e do Java2D.

jaspionTI para ter precisão em arredondamentos, principalmente quanto se trata de valores, é recomendável utilizar BigDecimal.

Posta o código para darmos uma olhada.

Olha esse link também: http://blog.caelum.com.br/arredondamento-no-java-do-double-ao-bigdecimal/

Cara,

Os floats foram criados para precisão cientifica. Caso queira para precisão monetaria utilize o Long…

http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/Long.html

Abrçss

Boa noite pessoal,

Vou dar uma lida nos links que vcs me passaram e depois comento

desculpem a demora

abraço a todos