Oi, Aldeny! Como vai?
Agradeço por compartilhar seu código com a comunidade Alura.
Seu código ficou bem organizado e a validação do nome usando trim(), length() e matches() mostra um cuidado interessante ao evitar números e nomes muito curtos. O uso do while (true) com break também resolve bem a repetição até que o nome seja válido.
Uma dica interessante para o futuro é utilizar o metodo isBlank(), que ajuda a verificar se o texto esta vazio ou contem apenas espacos. Isso deixa a validacao ainda mais completa. Veja este exemplo:
Scanner sc = new Scanner(System.in);
System.out.print("Digite seu nome: ");
String nome = sc.nextLine();
if (nome.isBlank()) {
System.out.println("Nome invalido");
} else {
System.out.println("Nome valido: " + nome);
}
Nesse codigo, isBlank() verifica se a string esta vazia ou contem apenas espacos, ajudando a evitar entradas invalidas antes mesmo de outras validacoes.
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!