Dúvida com BIGDECIMAL

2 respostas
marciofermino
Amigos o codigo esta funcionando.. mais se eu colocar por exemplo 100 / 3 .. da erro .. como posso estar resolvendo isso ? acredito ser por causa do resultado 33,333333333333333333333333333333
try {
            DecimalFormat nf = new DecimalFormat("#,##0.##");
            DecimalFormat formatacao = new DecimalFormat(",##0.00;(,##0.00)");
            nf.setParseBigDecimal(true);

            String numero1 = (String) textField1.getText();
            String numero2 = dropDown1.getValue().toString();
            BigDecimal n1 = (BigDecimal) nf.parse(numero1);
            BigDecimal n2 = (BigDecimal) nf.parse(numero2);

            BigDecimal resultado = n1.divide(n2);
          
            
            textField3.setText(formatacao.format(resultado)); // aqui o resultado em R$

        } catch (ParseException ex) {

        }

Obrigado.

2 Respostas

victorwss

Ao invés de BigDecimal resultado = n1.divide(n2); tente BigDecimal resultado = n1.divide(n2, 2, RoundingMode.HALF_UP);
Dá uma olhada também no RoundingMode que você acha melhor.

marciofermino

Amigo valeu era oque eu precisava

obrigado

Criado 3 de abril de 2008
Ultima resposta 3 de abr. de 2008
Respostas 2
Participantes 2