Bem minha gente, eu precisei fazer uma aplicação que envolvia reais, eu então assim que fornecia o double com o resultado da conta eu formatava o valor para reais 30,21 e fazia a conta com o double que ficava por exemplo 30.216 bem, com o decorrer dos calculos quanto exibia o valor final não batia com as somátorias exibidas, então pensei em usar os valores formatados ai encontrei um problema
quando o DecimalFormat formata o valor ele usa , e quando tento converter a String que ele gera para double ele não aceita a , pois usa somente o . assim como 30.216 e se eu tentava passar o 30,21 ele não converte, alguem sabe o que posso fazer para manipular esse tipo de problema, quero usar os double com apenas duas casas ou conseguir transformar esse valor formatado(String com virgula) novamente para double.
Decimalformat e double
3 Respostas
se você quer transformar a string com virgula para double novamente, você pode fazer assim =P
public class test {
public static void main(String[] args) {
String nome = "10,60";
System.out.println(nome);
Double number = Double.parseDouble(nome.replace(',','.'));
System.out.println(number);
}
}
acredito que isso resolva parte do seu problema =S
Consegui, de começo deu um erro mas resolveu o problema, valew e realmente vi que o double não é bom para esse tipo de aplicação vou estudar esse outro também valew aos dois brothers por responder minha pergunta valew galera, qualquer coisa é só dar um toque 
Pelo que eu percebi na sua descrição do problema, você está trabalhando com valores financeiros certo?
Então vou te dar uma dica: não utilize double nem float para valores financeiros devido a imprecisão da máquina. Para trabalhar com valores financeiros prefira BigDecimal.
De uma olhada na API, com ele você não terá mais problemas de ponto flutuante, etc.
Sei que esta não é a sua dúvida, mas acho que é uma dica válida.