1
resposta

Resolução do exercício

public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("Digite o texto:");
        String texto = scanner.nextLine();
        ArrayList<String> hashtags = encontraHashtag(texto);
        if (hashtags.isEmpty()) {
            System.out.println("Nenhuma hashtag encontrada.");
        }
        else {
            System.out.println("Hashtags encontradas: " + String.join(", ", hashtags));
        }
        scanner.close();
    }
    public static ArrayList<String> encontraHashtag(String texto){
        Pattern pattern = Pattern.compile("#\\w+");
        Matcher matcher = pattern.matcher(texto);
        ArrayList<String> hashtags = new ArrayList<>();
        while (matcher.find()){
            hashtags.add(matcher.group());
        }
        return hashtags;
    }
1 resposta

Olá, Kennedy, como vai?

O seu código soluciona o exercício de forma excelente e utiliza recursos avançados do Java, como as classes Pattern e Matcher do pacote java.util.regex. O uso da expressão regular #\w+ captura corretamente o caractere de cerquilha seguido por caracteres alfanuméricos, o que demonstra um bom domínio sobre manipulação de strings e busca por padrões. É muito positivo observar a organização do código em um método específico para a lógica de busca, o que torna o programa mais limpo e fácil de manter.

Agradeço por compartilhar sua resolução e incentivo que continue praticando e postando seus exercícios.

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