1
resposta

[Sugestão] JAVA: persistência de dados(....) desafio hora da prática - exercício 4

public class Main {
    public static void main(String[] args) {
        System.out.println(ehPalindromo("A man a plan a canal Panama")); // true
        System.out.println(ehPalindromo("arara"));                      // true
        System.out.println(ehPalindromo("palindromo"));                 // false
        System.out.println(ehPalindromo("Socorram-me, subi no ônibus em Marrocos")); // true
    }

    public static boolean ehPalindromo(String frase) {
        if (frase == null) {
            return false;
        }

        // Remove tudo que não for letra ou número e converte para minúsculas
        String limpa = frase.replaceAll("[^a-zA-Z0-9]", "").toLowerCase();

        // Compara a string limpa com sua versão invertida
        return new StringBuilder(limpa).reverse().toString().equals(limpa);
    }
}
1 resposta

Oi, Nicholas! Como vai?

Seu código ficou muito bem estruturado! A forma como você utilizou expressões regulares para limpar a string ficou bem interessante e demonstra domínio dos recursos da linguagem.

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