E se for ver bem, esse monte de variável fora do método você nem precisa, se quiser manter o método estatico pode até deixar…
Outra forma de saber se é um palindromo “na raça” usando for seria…
package java.edu.br.ifpe.lpoo;
public class ExercicioString {
public static boolean ePalindromo(String palavra) {
for (int i = 0, j = palavra.length() - 1; i < palavra.length(); i++, j--) {
if (palavra.charAt(i) != palavra.charAt(j)) {
return false; // não é palindromo
}
}
return true; // é palindromo
}
}
Creio que era a forma que você estava querendo fazer, porém você precisa testar letra por letra, ou seja, comparar a primeira com a última, a segunda com a penúltima, etc… por isso esse if
palavra.charAt(i) != palavra.charAt(j)
Onde o i vai de zero até a última letra (palavra.length() - 1) e o j vai da última letra até a primeira que é zero…
Aí você cria uma classe com main só pra testar…
public class TestaPalindromo {
public static void main(String[] args) {
String palavra = "osso";
if (ExercicioString.ePalindromo(palavra)) {
System.out.println(palavra + " é um palindromo");
} else {
System.out.println(palavra + " não é um palindromo");
}
}
}
Viu só quantas variáveis você tinha criado à toa?
Eu espero que tenha clareado mais as idéias, mas sugiro mesmo você ler a apostila antes de prosseguir com os estudos, assim você vai entender porque fiz essa chamada no if
ExercicioString.ePalindromo(palavra)
E idenfiticar que se trata de uma chamada estática, sem precisar usar new em qualquer objeto…
Bons estudos!