[ 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