Olá boa tarde!
Gostaria de saber como eu faço para verificar o tipo de dado que está sendo inserido num jTextField.
Tem algum método pronto no java para isso?
No meu caso, eu quero que o usuário só digite numeros naturais.
Desde já agradeço a força!
T+ 8)
Verificação de tipo de dado
8 Respostas
Em java não…vc precisaria usar REGEX
public void somenteNumeros (KeyEvent e)
{
//metodo para permitir somente numeros ao digitar em algum campo...
char c = e.getKeyChar();
if (!Character.isDigit(c))//nao permiti que se digite letras
e.consume();
}
…talvez sirva para o seu problema…
Quando for invocar esse metodo faça o seguinte
nomeDaSuaClasse.somenteNumeros(evt);//onde evt e o evento do teclado…
eu uso esse metodo no evento KeyTyped do meu objeto…
faça a conversão e trate a exception que será lançada caso não seja possível fazer a conversão. Ex:
try {
numero = Double.parseDouble(suaStringLida);
}
catch(NumberFormatException e)
{
System.out.println("Nao digitou um numero, tente novamente..);
}
rodpuc, a conversão eu já estava fazendo, apenas o tratamento da exception que não.
Vou tentar aqui depois posto o resultado!
Obrigado a todos!
Como fazer a mesma conversão usando:
JTextField texto = new JTextField(10);
Grato.
Você tambem pode usar jFormatedTextField que fica muito mais fácil.
Faça o tratamento do componente como o proprio carlos disse, será melhor.
Utilize um JOptionPane informando para o usuario que o campo só aceita numeros.