Por tarefa
Início rápido
A validação de CPF em um método estático, sem bibliotecas:
Java
public static boolean isValidCpf(String cpf) {
cpf = cpf.replaceAll("\\D", "");
if (cpf.length() != 11 || cpf.matches("(\\d)\\1{10}")) return false;
for (int i = 9; i < 11; i++) {
int soma = 0;
for (int j = 0; j < i; j++) soma += (cpf.charAt(j) - '0') * ((i + 1) - j);
int dv = (soma * 10 % 11) % 10;
if (dv != cpf.charAt(i) - '0') return false;
}
return true;
}Página completa, com a classe inteira e os casos de borda: validar CPF em Java.
publicidade
Prefere uma biblioteca?
Para projetos maiores, vale usar uma lib mantida: caelum-stella (artefato caelum-stella-core) traz validadores de CPF e CNPJ e integra com Bean Validation — dá para anotar um campo e validar no bean sem escrever o algoritmo à mão. Confirme o suporte ao CNPJ alfanumérico na versão que você instalar.
Continue
Perguntas frequentes
Preciso de alguma dependência para validar CPF e CNPJ em Java?
Não. As funções usam só
java.util.regex da biblioteca padrão. Para projetos maiores, a lib caelum-stella (caelum-stella-core) integra com Bean Validation.O mesmo código valida o CNPJ alfanumérico de 2026?
Sim. A função
isValidCnpj trata a base como 12 caracteres alfanuméricos (A–Z, 0–9) com a conversão caractere − 48; o numérico é caso particular. Os 2 dígitos verificadores continuam sempre numéricos.Válido é o mesmo que existir?
Não. As funções conferem a consistência matemática (módulo 11), não se o documento foi emitido pela Receita Federal.
Código em Java verificado. Algoritmo módulo 11 (numérico e alfanumérico). Revisado em 06/2026.