Verificar palíndroma com recursividade

Olá pessoal
gostaria de saber como fazer um método recursivo que mostre a palavra normal e invertida
encontrei outros fóruns na internet mas não consegui resolver meu problema.
Desde já agradeço a colaboração
Fico no aguardo, se alguém puder me ajudar.

Wellington Nogueira…

Não estou conseguindo fazer com que a cada re-chamada do método, eu continue percorrendo o vetor e incrementando o contador das posições. Segue o código:

public String teste(String palavra, int contador) { int cont2 = palavra.length() - contador - 1; char normal[] = palavra.toCharArray(); char invertido[] = new char[palavra.length()]; if (contador <= palavra.length()) { invertido[contador] = normal[cont2]; //o vetor invertido na posição 0 recebe o último caracter da palavra normal palavra = invertido.toString(); return teste(palavra, contador);//nesse ponto não dá certo pq perco a referencia que tenho //da posicao de cada caracter no vetor } return teste(palavra, ++contador);//aqui da mesma forma }

tá aí o código
se alguém puder me dar uma ajuda.

vc quer verificar se uma palavra/frase é palindrome ou quer imprimir/mostrar a palavra/frase invertida ?

Preciso somente que o método me mostre a palavra dos dois jeitos, porém, de forma recursiva.

Preciso somente que o método me mostre a palavra dos dois jeitos, porém, de forma recursiva.[/quote]

um metodo recursivo para fazer esses duas coisas ficaria estranho e complicado eu acho.
o metodo recursivo abaixo recebe uma String e retorna ela invertida.

public String inverte(String palavra) { if ("".equals(palavra)) return ""; int ultimaPosicao = palavra.length() - 1; return palavra.charAt(ultimaPosicao) + inverte(palavra.substring(0, ultimaPosicao)); }

Favor poste o que já fez e qual sua dúvida, erro, etc.