Erro ao calcular raiz quadrada no método da classe calculadora [Resolvido]

1 resposta
Guevara

Olá pessoal!

Fiz uma calculadora em Java, todas as operações básicas funcionam, menos a raiz quadrada, o código está logo abaixo:

Na classe calculadora:

public void raiz ()
    {       
        resultado = Math.sqrt(parcela1);
    }

Na classe PrincipalJFrame:

if(raizRadioButton.isSelected())
    {
    calc.raiz();
    }

E o botão calcular quando clicado faz o seguinte:

//Para a parcela1
    double aux;
    
    aux = Double.valueOf(parcela1Text.getText());
    calc.setParcela1(aux);
    
    //Para a parcela2
    aux = Double.valueOf(parcela2Text.getText());
    calc.setParcela2(aux);

Os dois JTextField parcela1 e parcela2 estão em double, o que eu queria era colocar o valor no primeiro campo, selecionar o raizRadioButton e clicar em “calcular” para que mostrasse no JTextField resultado o resultado do cálculo.

Esta é uma parte da saída do erro, pois é muito longo:

Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: empty String
        at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:994)
        at java.lang.Double.valueOf(Double.java:475)
        at projetocalculadora.PrincipalJFrame.calcularbuttonActionPerformed(PrincipalJFrame.java:229)
        at projetocalculadora.PrincipalJFrame.access$100(PrincipalJFrame.java:13)
        at projetocalculadora.PrincipalJFrame$2.actionPerformed(PrincipalJFrame.java:80)
        at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
        at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
        at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
        at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
        at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
        at java.awt.Component.processMouseEvent(Component.java:6041)
        at javax.swing.JComponent.processMouseEvent(JComponent.java:3265)
        at java.awt.Component.processEvent(Component.java:5806)

Não entendi onde está o erro, pois no código o Netbeans não marca nada em vermelho acusando o erro.

[]s

1 Resposta

Guevara

Afferson!
Descobri, olhei ali no erro:

java.lang.NumberFormatException: empty String

O que ocorre é que os dois JTextField parcela1 e parcela2 usam a mesma variável AUX para fazer o cálculo, logo, se colocar zero em parcela2, o cálculo é efetuado.

Fica ai a dica para quem precisar… 8)

Criado 24 de fevereiro de 2009
Ultima resposta 24 de fev. de 2009
Respostas 1
Participantes 1