Fala pessoal…
É o seguinte, gostaria de saber como tratar as exceções que podem ser geradas atraves de um JOptionpane.showInputDialog.
Exemplo:
String x = JOptionDialog.showInputDialog("digite um numero");
int n = Integer.parseInt(x);
E se o usuario digitar uma letra?
e se ele digitar um numero decimal, exemplo 1.1?
Como tratar esta exceção?
Voce pode apenas tratar as execoes do Integer.parseInt(String). Isto eh normal a qualqueré tratamento de excecoes em java.
try {
int a = Integer.parseInt( x );
}
catch ( NumberFormatException nfe ) {
// faz algo
}
Blz…
Mas quando eu faço isso:
String x = JOptionPane.showInputDialog("Digite a quantidade de números que deseja analisar:");
try{
double n = Double.parseDouble(x);
}
catch (NumberFormatException e){
JOptionPane.showMessageDialog(null,"ERRO");
}
ele naum reconhece mais a variavel no meu programa.
da um erro dizendo que naum encontrou a variavel n.
cannot find symbol variable n
Sua variável n só é válida dentro da chaves { }.
Tenta declarar a variável (double n) no mesmo lugar onde você declarou a (String x), fazendo isso você vai aumentar o escopo da sua variável, mas o estranho é que esse seu código não tem nenhum motivo para não compilar…
double n=0.0; // Declarando a variável e inicializando.
String x = JOptionPane.showInputDialog
("Digite a quantidade de números que deseja analisar:");
try{
n = Double.parseDouble(x);
}
catch (NumberFormatException e){
JOptionPane.showMessageDialog(null,"ERRO");
}