[RESOLVIDO] Ajuda em verificação de campo formatado

Preciso de ajuda, já tentei de tudo fazer uma verificação, para verificar se o campo é nulo.

  if(edCpf.getText().length() < 14 || edCpf.getText().length() > 14){
              CadastrarCliente cadastrarcliente = this;
       Point p = this.getLocation();
        new Thread(){
            @Override
            public void run(){
                    for (int i = 0; i<6; i++){
                try {
                    cadastrarcliente.setLocation(p.x - 10, p.y);
                    sleep(20);
                    cadastrarcliente.setLocation(p.x + 10, p.y);
                    sleep(20);
                
        }       catch (InterruptedException ex1) {
                    Logger.getLogger(CadastrarCliente.class.getName()).log(Level.SEVERE, null, ex1);
                }
            cadastrarcliente.setLocation(p.x, p.y);
                }
                }       
    
        }.start();

            return;
        }

Como podem ver, o CPF mesmo sem digitar nada ele cadastra.

if(edCpf.getText().equals(""){
   sout("Digite o CPF");
} else {
   sout("blz, colocou o CPF, bom garoto");
}

Ou

String cpf = edCpf.getText();
if((cpf == null) || (cpf.equals(""))){
   sout("Digite o CPF");
} else {
   sout("blz, colocou o CPF, bom garoto");
}
1 curtida

Se o campo tem máscara, não precisa verificar o tamanho. Se o usuário digitar menos dados que o necessário ao sair do campo os dados digitados são ‘limpos’, ou seja, para ‘validar’ a máscara é necessário preencher todos os espaços definidos na máscara. Sobre a verificação, se o campo está ou não preenchido, eu costumo fazer assim:

if(Character.isDigit(edCpf.getText().charAt(1)){
	[...]
}

Ou seja, nesse caso verifico se o segundo caractere é um dígito. Se não for, então a máscara não foi preenchida, ou seja, o campo está vazio.

1 curtida