Olá, Augusto! Como vai?
Parabéns pela resolução da atividade!
Observei que você explorou o uso de expressões regulares para validar senhas com Java, utilizou muito bem o Pattern e Matcher para aplicar as regras de verificação e ainda compreendeu a importância da estrutura condicional para fornecer mensagens claras ao usuário. Continue postando as suas soluções, com certeza isso ajudará outros estudantes e tem grande relevância para o fórum.
Uma dica interessante para o futuro é encapsular a lógica de validação em um método separado, tornando o código mais reutilizável e organizado. Assim:
public static boolean validarSenha(String senha) {
String regex = "^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)(?=.*[@$!%*?&]).{8,}$";
return senha.matches(regex);
}
Isso faz com que a verificação seja chamada de forma simples, como validarSenha(senha), deixando o main mais limpo e facilitando a manutenção.
Fico à disposição! E se precisar, conte sempre com o apoio do fórum.
Abraço e bons estudos!
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!