Tenho um JFormattedTextField com a máscara #,##0.00 e o Text inicial em 0.
Quando executo o programa um código faz o seguinte:
Float a = Float.parseFloat(JFormattedTextField.getText());
a ficará com o valor 0.
Se agora eu fizer:
a = (float) (a + 1.10);
JFormattedTextField.setText(""+a);
o campo exibirá : 1.0 e não 1.10.
Como resolvo isso?
/**
* Arredonda com 2 casas decimais.
* @param pDouble
* @return
*/
public static double converteArredondar2Casas(double pDouble){
DecimalFormat df = new DecimalFormat("#,00");
pDouble = Double.parseDouble(df.format(pDouble));
return pDouble;
}
/**
* formata double em moeda, retorna string
* @param price
* @return
*/
public static String formataValor(double price) {
DecimalFormat formatter = new DecimalFormat("###.###.##0,00");
return formatter.format(price);
}
Veja se uma das duas te ajuda
Em que parte do código eu ponho?
Eu tenho uma classe onde coloquei todas as funções que eu preciso. nomeei a mesma como Funcao
Tem que importar essas funções na classe ou form ou dialog…
import static util.Funcao.*;
EU TE AMO!!!
Exatamente o que eu queria.
to usando “000,000.00”