Dúvida com a entrada: JOptionPane.showMessageDialog

3 respostas
J

Olá Pessoal!
Tenho uma dúvida relativamente simples para vcs aki:
O exercicio é para somar dois números inteiros com a entrada sendo
realizada com JOptionPane.showInputDiolog, como a entrada é uma String
usei a sugestão do Livro Integer.parseInt(numero1), para realizar a
soma dos números, deu certo, mas gostaria de exibir uma mensagem de
erro caso a entrada não seja um inteiro, como faço?
Segue o programa:

import javax.swing.JOptionPane;

public class SomaDialog

{
public static void main(String[] args)
{

//entrada do número1 pela Caixa de Dialogo

String numero1 = JOptionPane.showInputDialog(“Entre com um numéro

inteiro:\n);

//entrada do número2 pela Caixa de Dialogo
String numero2 = JOptionPane.showInputDialog(“Entre com um numéro
inteiro:\n”)
;

// soma dos números
int soma = Integer.parseInt(numero1) + Integer.parseInt(numero2);

// mesagem para o metodo showMessageDialog
String mensagem = String.format(“A soma dos números é: %d”, soma);

//exibir o resultado
JOptionPane.showMessageDialog(null, mensagem);

}

}//fim da classe somaDialog

3 Respostas

D

Você pode tratar isso em um bloco try/catch:

String num = "";
int numero = 0;

num = JOptionPane.showInputDialog("Entre com um numéro inteiro:\n"); 

try{
    numero = Integer.parseInt(num);
} catch(NumberFormatException e){
   System.out.println("Entrada Invalida...");
}

Testa ai e ve se é isso que você precisa....T+

T

eu estava tentando implementar de uma maneira diferente do diego2005 , mas o jeito mais simples é esse mesmo usando o Try e Catch. o meu codigo ficou assim.

import javax.swing.*;

public class Teste

{
public static void main(String[] args)

{

int a=0,b=0;

try{//entrada do número1 pela Caixa de Dialogo

String numero1 = JOptionPane.showInputDialog(Entre com um numéro inteiro);

a=Integer.parseInt(numero1);

//entrada do número2 pela Caixa de Dialogo

String numero2 = JOptionPane.showInputDialog(Entre com um numéro inteiro);

b=Integer.parseInt(numero2);
} catch(NumberFormatException e){

JOptionPane.showMessageDialog(null,O Numero não é inteiro);

}

}

}//fim da classe Teste

J

Valeu galera!
Essas opções vão me ajudar bastante!

Criado 10 de outubro de 2006
Ultima resposta 10 de out. de 2006
Respostas 3
Participantes 3