Você quer mostrar o resultado da soma com menos casas decimais?
É isso?
Se for, pode utilizar a classe Format.
C
cassolato
Kra fiz um aplicativozinho simples pra vc ver como funciona pra diminuir as casas decimais.
importjava.text.DecimalFormat;// importa a classe q fara a aproximacaopublicclassDuvida{publicstaticvoidmain(String[]args){doublenum1=23.65;doublenum2=545.689;doublesoma;soma=num1+num2;// Aqui ele cria uma nova instancia do metodo DecimalFormat// note q vc delimita as casas decimaisDecimalFormataproximador=newDecimalFormat(" 0.00 ");// repare o q e feito na variavel somaSystem.out.println(" A soma eh => "+aproximador.format(soma));}}
Espero q tenha ajudado…
Qualquer duvida posta ai q nos damos um jeito
Abracao e te +
marcioa1
Colega,
Li num livro de um tal de Joshua não sei o que - Effective Java - que para cálculos monetários ( é isto que você quer ? ) devemos usar a classe BigDecimal.
O livro é bom, pois tem “conselhos” ( boas práticas ) que evitam dores de cabeça.
Abraço,
Márcio
Bani
É, o Joshua Bloch fala para evitar o uso de double quando é necessário fazer contas mais precisas.
Porém, para o caso de cálculos monetários, a dica que ele dá é usar int ou long e fazer os cálculos em centavos mesmo. Utilizar BigDecimal para coisas relativamente simples acaba dando mais trabalho e fica mais lento. Só se tiver mais do que 18 dígitos é necessário utilizá-la.
marcioa1
Obrigado Bani,
Li o livro mas fiz alguma confusão. Depois me lembrei dele ter dito para usar int. Eu tenho um projeto no qual estou usando BigDecimal. Vou revê-lo , ou melhor dizendo, fazer uma refatoração ( é esta a tradução para refactoring , ou estou fazendo outra confusão ? )