Tratar exceções do JOptionPane

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"); }