Código Java para validar CPF
Publicado por Samuel E Nascimento 15/09/2006
[ Hits: 46.115 ]
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") );
}
*/
}
Calcular ritmo de corrida de rua
Algoritmo para Gerar um Sudoku NxN válido
Código para validar CPF e CNPJ otimizado
Planilha de cálculo para multa judicial
Nenhum comentário foi encontrado.
Preparando-se para certificações da LPI através do LPI Lab
Migração de Arch Linux para repositórios CachyOS (Uso de Instruções v3 e v4)
Boas Práticas e Padrões Idiomáticos em Go e C
Ativando o modo Quake no XFCE4-Terminal
[Tutorial] Configurando Multimaster no Samba 4 AD (DC02) + Explicação de FSMO Roles
[Resolvido] Google Chrome reclamando de perfil em uso após mudar hostname
Instalando o Tema de Ícones Tela Circle
Copiar Para e Mover Para no menu de contexto do Nautilus e Dolphin
Senhor Einstein tinha razão mesmo! (1)
Instalação Dual Boot Linux+Windows 11 (4)
No Ubuntu 26.04, sudo passou a mostrar os asteriscos ao digitar por pa... (5)









