Pesquisar este blog

quarta-feira, 16 de março de 2011

VALIDAÇÃO DE CPF -MÉTODO AUXILIAR-hasOnlyNumber

O método  hasOnlyNumber  tem a s seguintes características:
Nome do Método
hasOnlyNumber

Argumento ou parâmetro
String  str
É o que está colocado entre os parêntesis
Processamento
Todo código colocado entre as chaves
Tipo de retorno
boolean
Colocado antes do nome do método
Nível de acesso
public
Permite acesso geral, dentro da classe e fora da classe
Assinatura do Método
A primeira linha de código do método
public String hasOnlyNUmer(String str)


Este método tem por objetivo retornar false caso o usuário tenha digitado letra no lugar de número ou não tenha colocado o traço ou o ponto antes dos dígitos verificadores.
Este método declara a  variável hasOnlyNumber do tipo Boolean e atribui  o valor false como valor inicial.
Em seguida, através da estrutura de repetição  baseada no for  verifica se cada caractere digitado   trata-se de um dígito número, exceto o traço.
Assim o for declara i do tipo inteiro  com valor inicial em 0.
Na primeira vez que o código dentro do  for executado, i vale 0, de forma o código dentro do IF é executado,  pois  0 é diferente de 9.
  
Dentro do IF , o método isDigit  da classe Character é responsável por verificar se o caractere trata-se de um dígito numérico. Se for dígito numérico, então a variável hasOnlyNumber recebe  true, caso contrário recebe false.
O segundo IF dentro do primeiro IF é responsável por parar a repetição do for caso hasOnlyNumber receba um false. Ou seja, se ao fazer a varredura e encontrar qualquer coisa diferente de um dígito numérico, a repetição é interrompida pelo break  e a linha de código  return hasOnlyNumber é executada.
Para cada valor de i esse processo se repete, até encontre um false ou até todos os caracteres tenham sido varridos.
Para o valor de i igual a 9 corresponde ao momento em que se está acessando  o traço ou o ponto que separa os dígitos verificadores. Neste momento, o código dentro do else  passa a ser executado.
Dentro do código do else é verificado se existe um traço ou um ponto antes dos dígitos verificadores.  Caso isso ocorra, a repetição é interrompida, e o método retorna false.











Nenhum comentário:

Postar um comentário