1
resposta

Resolução do exercício

public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("Digite o código:");
        String codigo = scanner.nextLine();
        if (ehValido(codigo)){
            System.out.println("O código está válido.");
        }
        else {
            System.out.println("O código está inválido.");
        }
        scanner.close();
    }
    public static Boolean ehValido(String codigo){
        String regex = "^[A-Z]{3}-\\d{4}$";
        Pattern pattern = Pattern.compile(regex);
        Matcher matcher = pattern.matcher(codigo);

        if (matcher.matches()){
            return Boolean.TRUE;
        }
        else {
            return Boolean.FALSE;
        }
    }
1 resposta

Olá, Kennedy, como vai?

Seu código implementa corretamente a validação solicitada para o formato de código de referência. A expressão regular utilizada $ \text{^[A-Z]{3}-\d{4}$} $ cobre precisamente a regra de três letras maiúsculas, o hífen e os quatro dígitos numéricos. A estrutura com o método separado para a lógica de validação torna o programa organizado e fácil de ler. É excelente ver que você aplicou as classes Pattern e Matcher para manipular a busca por padrões em Java.

Parabéns pelo excelente exercício e por compartilhar sua resolução com a comunidade. Continue praticando e postando seus progressos por aqui. O fórum segue à disposição para qualquer dúvida que surgir em seus estudos.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!