Verificar se é número ou letra

1 resposta
java
A

Olá pessoal,
Estou desenvolvendo uma aplicação, e no cadastro do produto tenho um problema.
Preciso verificar se quando o usuário digitar o valor do produto, se possui letras ou vírgula, para não ter erro na conversão

1 Resposta

P

Você pode usar regex:

class Rextester {  
    public static void main(String args[]){
        String valores[] = new String[]{"1","1.0","1,1","1.a"};
        for(int i = 0; i < valores.length ; i++){
            if(valores[i].matches("^(\\d)$") || valores[i].matches("^\\d+\\.{1}\\d+$")){
                System.out.println("Ok");
            }else{
                System.out.println("Não Ok");
            }
        }
    }
}
-------------------------
Saída: 
Ok
Ok
Não Ok
Não Ok
  • Aqui você usa a expressão “^(\d)$” para verificar se a String só possui números.

  • Já nessa “^\d+\.{1}\d+$” você solicita um valor númerico no inicio da expressão, seguida de um ponto “.”, seguido por um ou mais valores numéricos.

Criado 2 de fevereiro de 2016
Ultima resposta 2 de fev. de 2016
Respostas 1
Participantes 2