Código Java para validar CPF
Publicado por Samuel E Nascimento 15/09/2006
[ Hits: 45.852 ]
Classe Java com os métodos de validação de um CPF, conforme as regras da Receita Federal. Para usá-la faça as adaptações de acordo com o seu projeto.
import java.util.*; /** * Classe com método para validação de CPF * * Pode ser utilizada livremente e modificada para se integrar à sistemas mais complexos. * * @version 1.0 * @since 05/06/2003 */ public class Cpf { /** Realiza a validação do CPF. * * @param strCPF número de CPF a ser validado * @return true se o CPF é válido e false se não é válido */ static public boolean CPF (String strCpf ) { int d1, d2; int digito1, digito2, resto; int digitoCPF; String nDigResult; d1 = d2 = 0; digito1 = digito2 = resto = 0; for (int nCount = 1; nCount < strCpf.length() -1; nCount++) { digitoCPF = Integer.valueOf (strCpf.substring(nCount -1, nCount)).intValue(); //multiplique a ultima casa por 2 a seguinte por 3 a seguinte por 4 e assim por diante. d1 = d1 + ( 11 - nCount ) * digitoCPF; //para o segundo digito repita o procedimento incluindo o primeiro digito calculado no passo anterior. d2 = d2 + ( 12 - nCount ) * digitoCPF; }; //Primeiro resto da divisão por 11. resto = (d1 % 11); //Se o resultado for 0 ou 1 o digito é 0 caso contrário o digito é 11 menos o resultado anterior. if (resto < 2) digito1 = 0; else digito1 = 11 - resto; d2 += 2 * digito1; //Segundo resto da divisão por 11. resto = (d2 % 11); //Se o resultado for 0 ou 1 o digito é 0 caso contrário o digito é 11 menos o resultado anterior. if (resto < 2) digito2 = 0; else digito2 = 11 - resto; //Digito verificador do CPF que está sendo validado. String nDigVerific = strCpf.substring (strCpf.length()-2, strCpf.length()); //Concatenando o primeiro resto com o segundo. nDigResult = String.valueOf(digito1) + String.valueOf(digito2); //comparar o digito verificador do cpf com o primeiro resto + o segundo resto. return nDigVerific.equals(nDigResult); } /* Use este trecho para testar a classe public static void main(String[] args) { System.out.println( CPF("04624193806") ); } */ }
Gerador de números aleatórios em Java
Avaliação de expressões matemáticas
Pequeno algoritmo para determinar se um número é primo ou não entre 1 e 10000
Nenhum coment�rio foi encontrado.
Atualizando o Passado: Linux no Lenovo G460 em 2025
aaPanel - Um Painel de Hospedagem Gratuito e Poderoso
O macete do Warsaw no Linux Mint e cia
Um modo leve de ouvir/ver áudio/vídeo da internet em máquinas pererecas
Resolver algumas mensagens de erro do SSH
Instalar módulo de segurança do Banco do Brasil Warsaw do tipo .run
Sem espaço na partição home (2)
O que você está ouvindo agora? [2] (190)
Procrastinação e autossabotagem são problemas muito comuns na sociedad... (5)