[ RESOLVIDO ] Captar valor int em JOptionPane
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
Curtidas 0
Respostas
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
09/04/2009
Use
Integer.parseInt(VARIÁVEL);
GOSTEI 0
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
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
09/04/2009
Simu, desculpe pela má formatação da mensagem anterior.
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.
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);
GOSTEI 0
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
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
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
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 ) ;
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