Problema para retornar para string

3 respostas
dler

Olá pessoal ficaria grato se alguem pudesse me ajudar com um problema que estou tendo no programa!
int produto = 1;

while ((produto == 1)) {
        //Pede o categoria do produto
        String Produto = JOptionPane.showInputDialog("PRODUTO 1-ROUPA 2-CALÇADOS");


        //Verifica se é numero
        int n = 0;
        try {
            n = Integer.parseInt(Produto);//se nao for um numero lança exceção
            } catch (NumberFormatException nfe) {
            JOptionPane.showMessageDialog(null, "numero invalido");
          
        }



        //verifica se o numero é valido
        if (Integer.valueOf(Produto) > 2) {
            JOptionPane.showMessageDialog(null, "Voce digitou um valor invalido: " + Produto);
            produto = 1;
        }
        if (Integer.valueOf(Produto) < 3) {
            produto = 0;
        }
    }

Eu gostaria que se na verificacao que ele faz para saber se e numero se for digitado um letra ele diga numero invalido como ja esta fazento normalmente,mas tambem logo depois da msg de invalido ele volte para a string produto e pergunte novamente.
Com a parte numerica esta funcionando ele retorna mas com a parte das letras nao.

3 Respostas

F

usa

try{
  //PEGA VALOR
  //SE VÁLIDO
  JOptionPane.showMessageDialog(null,"Número é válido");

}
 catch(Exception e){
  //se não for válido
  JOptionPane.showMessageDialog(null,"Número Inválido");
}
lina

Oi,

Olha só, você poderia fazer algo do tipo:

while (true)
{	
	try
	{
		int
		ln_number_product	=	Integer.parseInt(JOptionPane.showInputDialog("PRODUTO 1-ROUPA 2-CALÇADOS"));

		switch (ln_number_product)
		{
			case 1:
				
				JOptionPane.showMessageDialog(null, "numero válido");
					
				break;
						
			case 2:
						
				JOptionPane.showMessageDialog(null, "numero válido");
				
				break;

			default:
						
				JOptionPane.showMessageDialog(null, "opção inválida");
			
				continue;
		}
				
		break;
	}
	catch (NumberFormatException e) 
	{
		JOptionPane.showMessageDialog(null, "Digite apenas letras");
	}
}

Tchauzin!

dler

Muito obrigado pessoal,estou iniciando programacao agora e toda ajuda e bem vinda.Aprender sozinho nao e facil ainda bem que possso contar com amigos como vcs!
Abraços… :smiley:

Criado 17 de fevereiro de 2009
Ultima resposta 18 de fev. de 2009
Respostas 3
Participantes 3