Uso do String

6 respostas
sgtbreitner

Olá pessoal!
Estou com uma dúvida aqui:
Fiz um programa onde o usuário informa varias idades e apois isso ele calcula a media das idades, programa simples, só que eu empaquei numa parada aqui… Como que eu faço para que o usuário não digite Strings na caixa de diálogo JOptionPane? Queria saber tratar este erro pois se ele informar alguma letra em vez de um numero o programa termina e eu nao queria que isso acontecesse… e agora José??

6 Respostas

J

Acredito que se você deseja que o campo só receba a entrada de números, então

você deve fazer um JDialog

http://java.sun.com/docs/books/tutorial/uiswing/components/dialog.html

http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/JDialog.html

sgtbreitner

Bom dia pessoal, bem, os links relacionados na resposta acima foram muito uteis mas ainda assim permanece minha dúvida… vou colocar o código fonte para ficar mais claro a dúvida…
Aqui está o meu código fonte, eu queria que o meu if tivesse alguma condição para que quando o usuário digitasse qualquer valor que não fosse inteiro ele mostrasse a mensagem de erro. Desculpem por não colocar o código nos moldes padrão separado por linhas, é que eu não sei como fazer isso ainda!! :stuck_out_tongue:

package ex1;

import javax.swing.JOptionPane;

public class Main {

public static void main(String[] args) {

int i;

int idade[] = new int[5];

float soma = 0;

for(i=0; i<5; i++){

idade[i] = Integer.parseInt(JOptionPane.showInputDialog("Informe sua idade: "));

[color=red] if(idade[i] > 200 || idade[i] < 0 )[/color]{

JOptionPane.showMessageDialog(null,Digite uma idade válida!);

}

}

for (i=0; i<idade.length;i++){

soma += idade[i];

}

JOptionPane.showMessageDialog(null,"Média das idades: " + (soma/idade.length));

}

}
b11

Voce tem que tratar a exceçao que pode ser gerada na hora da conversao

idade[i] = Integer.parseInt(JOptionPane.showInputDialog("Informe sua idade: "));

faça o tratamento de erro

try{ idade[i] = Integer.parseInt(JOptionPane.showInputDialog("Informe sua idade: ")); }catch(Exception e){ ... }

caso ocorra exceçao, trate-a no bloco catch

sgtbreitner

Ahhhmmmmmmmmm rsrs deu certo aki! vlw pelas dicas, vou estudar estes trys e catchs e por fim, como que eu faço p formatar meu codigo fonte quando eu quiser postá-lo nos fóruns?
Obrigado!

M

Apenas use as tags [ code] e [ /code] e cole seu código entre elas.

sgtbreitner

opa, obrigado mais uma vez!!! farei isso!

Criado 29 de maio de 2008
Ultima resposta 30 de mai. de 2008
Respostas 6
Participantes 4