Kra fiz um aplicativozinho simples pra vc ver como funciona pra diminuir as casas decimais.
import java.text.DecimalFormat; // importa a classe q fara a aproximacao
public class Duvida {
public static void main( String[] args ) {
double num1 = 23.65;
double num2 = 545.689;
double soma;
soma = num1 + num2;
// Aqui ele cria uma nova instancia do metodo DecimalFormat
// note q vc delimita as casas decimais
DecimalFormat aproximador = new DecimalFormat( " 0.00 " );
// repare o q e feito na variavel soma
System.out.println( " A soma eh => " + aproximador.format( soma ) );
}
}
Espero q tenha ajudado…
Qualquer duvida posta ai q nos damos um jeito
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.
É, 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.
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 ? )