[RESOLVIDO] Se não for número mandar mensagem de erro

9 respostas
K

Olá pessoal, sou novo aqui e também no java, estou precisando saber qual a forma certa de fazer tal código, irei tentar explicar melhor abaixo:

import javax.swing.*;
  public class IF{
    public static void main (String args[]) {



String ler_nota;
double nota;
String sit;


	ler_nota = JOptionPane.showInputDialog("Digite a nota!");

//É nessa parte que eu preciso de ajuda...

//if ( ler_nota != number ) 

//JOptionPane.showMessageDialog(null," Você não pode digitar caracteres aqui, somente números! Digite novamente...");


		
		nota = Double.parseDouble(ler_nota);


			
			if ( nota >= 7 )
                                
				sit = "Passou!";

			else if (  nota >= 5 )
                                
				sit = "recuperação";
			else
                                
				sit = "retido!";



JOptionPane.showMessageDialog(null,sit);





  }
}

Eu não sei se o operador de diferente é esse mesmo "=!" e no lugar do Number seria outra coisa para representar números, já tentei int, float, ou seja, estou precisando de ajuda só nessa parte ^^

Obrigado a todos.

9 Respostas

S

da uma olhada nesse link

http://www.arquivodecodigos.net/dicas/java-verificar-se-uma-string-e-um-valor-numerico-valido-345.html

Hewerson
import javax.swing.JOptionPane;


public class Number {

	/**
	 * @param args
	 */
	public static void main(String[] args) {

		//Nesse caso você pode usar try-ctach
		//e lança a exceção NumberFormatException
		 String ler_nota = null;  
		 double nota;  
		 String sit;
		 boolean valido = true;
		do{
			try{
			//Lendo nota pelo JOptionPane
			ler_nota = JOptionPane.showInputDialog(null,"Digite sua nota!!");
			nota = Double.parseDouble(ler_nota);
			
			 if ( nota >= 7 ){                      
				 sit = "Passou!";
			 }
			 else if (  nota >= 5 ){                 
				 sit = "recuperação";
			 }	 
			 else{ 
				 sit = "retido!";
			 }
			 JOptionPane.showMessageDialog(null,"Sua nota.: "+nota+" "+sit);
			 valido = false;
			}catch(NumberFormatException number){
			JOptionPane.showMessageDialog(null," Você não pode digitar caracteres aqui, somente números! Digite novamente...");
			valido = true;
			}
		}while(valido==true);
		}

}
wender.jean

Utilizei a seguinte solução a alguns dias.

if(dadoSerChecado.matches("[0-9]*")) {
// Se for numero
} else {
// Se não for numero
}

:stuck_out_tongue:

isaiaspf
Opa.
public static void lerNota() {
	String ler_nota;
	double nota;
	String sit;

	ler_nota = JOptionPane.showInputDialog("Digite a nota!");

	if(!ler_nota.matches("[0-9]*")) {
		JOptionPane.showMessageDialog(null, " Você não pode digitar caracteres aqui, somente números! Digite novamente...");
		lerNota();
		return;
	}

	nota = Double.parseDouble(ler_nota);
	if(nota >= 7)[code]
		sit = "Passou!";
	else if(nota >= 5)
		sit = "recuperação";
	else
		sit = "retido!";

	JOptionPane.showMessageDialog(null, sit);
}
public static void main(String args[]) {
	lerNota();
}
Abraço.
K

Vlw pela ajuda pessoal, brigadão mesmo ^^

Abraços.

Lucas_Abbatepaolo

Se sua duvida foi esclarecida coloque no assunto [Respondido]

isaiaspf

Ou [RESOLVIDO]

Lucas_Abbatepaolo

kkk isso [RESOLVIDO]

K

Pronto ^^

Criado 4 de agosto de 2011
Ultima resposta 4 de ago. de 2011
Respostas 9
Participantes 6