[ RESOLVIDO ] Captar valor int em JOptionPane

Java

09/04/2009

Preciso captar do usuario um valor int em JOptionPane é possivel? pois preciso captar 3 dados int para efetuar algumas operações com os mesmos, ( logicamente impossiveis em String) Obrigado.
Virtualx

Virtualx

Curtidas 0

Respostas

Ricardo Staroski

Ricardo Staroski

09/04/2009

PAra converter um texto numérico em [b]int[/b], utilize o método estático [b]parseInt[/b] da classe [b]java.lang.Integer[/b]
GOSTEI 0
Keyzero

Keyzero

09/04/2009

Use Integer.parseInt(VARIÁVEL);
GOSTEI 0
Virtualx

Virtualx

09/04/2009

mesmo convertendo n compila, será algum erro na definição das variaveis? int port = 0; int ingl = 0; double media = 0; String portmsg = "Entre Com Sua Media de PORTUGUES:"; String inglmsg = "Entre Com Sua Media de INGLÊS:"; port = JOptionPane.showInputDialog(null,portmsg); ingl = JOptionPane.showInputDialog(null,inglmsg); Integer.parseInt(port); Integer.parseInt(ingl); media = port + ingl; System.out.println(media);
GOSTEI 0
Carlos Heuberger

Carlos Heuberger

09/04/2009

[quote="Virtualx"] mesmo convertendo n compila, será algum erro na definição das variaveis? ...
Por favor use os tags [b][code[/b][b]][/b] e [b][/code[/b][b]][/b] em torno do seu código para facilitar a leitura. "n compila" porque? erro de compilacao? [b]qual?[/b] e qual linha? []]
GOSTEI 0
Virtualx

Virtualx

09/04/2009

Simu, desculpe pela má formatação da mensagem anterior.
        String port = "";
        String ingl = "";
        double media = 0.0;
              
                String portmsg = "Entre Com Sua Media de PORTUGUES:";
                String inglmsg = "Entre Com Sua Media de INGLÊS:";
           
       port = JOptionPane.showInputDialog(null, portmsg);
       ingl = JOptionPane.showInputDialog(null, inglmsg);
        
     Integer.parseInt(port); 
     Integer.parseInt(ingl);
        
       media = port + ingl; //não compila !
       
        // o erro indica que a operação não pode ser executada com string, media esta declarada como double
       
       media = media/2 ;
       
       JOptionPane.showMessageDialog(null, media);


A linha 14 media = port + ingl; "found : java.lang.String required: double" não compila pois solicita media em double , ja que foi declarada em double, esta sendo identificada como String , mesmo depois da conversão.
GOSTEI 0
Carlos Heuberger

Carlos Heuberger

09/04/2009

isso não tem nada a ver com GUI... já tentou ler a documentação do método parseInt? voce declarou a variavel "port" como sendo String, não tem como voce alterar essa declaração pelo programa. Voce tem que usar outra variavel, declarada como int para armazenar dados do tipo int.
String port;
int iPort;

port = "123";
iPort = Integer.parseInt(port);

media = iPort + ...
[]]
GOSTEI 0
Virtualx

Virtualx

09/04/2009

muito obrigado , duvida esclarecida [quote="simu"] isso não tem nada a ver com GUI... já tentou ler a documentação do método parseInt? voce declarou a variavel "port" como sendo String, não tem como voce alterar essa declaração pelo programa. Voce tem que usar outra variavel, declarada como int para armazenar dados do tipo int.
String port;
int iPort;

port = "123";
iPort = Integer.parseInt(port);

media = iPort + ...
[]]
GOSTEI 0
Gustavo Bernardo

Gustavo Bernardo

09/04/2009

Edit: Arrumando uns espaçamentos. Desculpa ressuscitar o tópico. Estou com o mesmo problema. Alguém pode me ajudar?
 
        String valorX = JOptionPane.showInputDialog(null, "Dada a equação x² = y", "Insira um valor para x");
        int conversor = Integer.parseInt(valorX);
        
        String valorY;
        int ivalorY;
        valorY = "123";
        
        ivalorY = Integer.parseInt(valorY);
        
        ivalorY = (valorX + valorX);
        
        //int conversor2 = Integer.parseInt(valorY);
                 
        JOptionPane.showMessageDialog(null, "O valor de y é " +valorY);
                        
        
        System.exit(0); 
GOSTEI 0
Ricardo Staroski

Ricardo Staroski

09/04/2009

String valorX = JOptionPane.showInputDialog( null, "Dada a equação x² = y", "Insira um valor para x" ) ;
int conversor = Integer.parseInt( valorX ) ;

String valorY ;
int ivalorY ;
valorY = "123" ;

ivalorY = Integer.parseInt( valorY ) ;

// valorX e valorY são String, você está concatenando as duas e tentando atribuir à uma variável int
ivalorY = ( valorX + valorX ) ;

// int conversor2 = Integer.parseInt( valorY ) ;

JOptionPane.showMessageDialog( null, "O valor de y é " + valorY ) ;

System.exit( 0 ) ;
Talvez assim fica mais fácil:
String texto = JOptionPane.showInputDialog( null, "Dada a equação x² = y, Insira um valor para x" ) ;

int x = Integer.parseInt( texto ) ;

int y = x * x ;


JOptionPane.showMessageDialog( null, "O valor de y é " + y ) ;

System.exit( 0 ) ;
GOSTEI 0
POSTAR