Inverter uma String

Olá Pessoal como faço para inverter uma String ?
tipo se eu tiver uma string “Java” ao inverter ficará “avaj”, se alguém puder me ajudar eu agradeço, 1 abraço

Dá uma olhada na especificação do método reverse da StringBuffer

[]'s

usa o metodo “reverse” da classe StringBuffer

valew pela dica os que postaram, mas estou postando o código onde tenho uma aplicação servidor, que lê uma string no caso linha, tenho que reverter, mas estou tendo dificuldades em compreender o método reverse, se alguém tiver algum exemplo eu agradeço.

import java.io.*;
import java.net.*;
public class ServidorDeEco {
	public static void main(String args[]) {
		try {
			ServerSocket s = new ServerSocket(2000);
			while (true) {
				System.out.print("Esperando alguém se conectar...");
				Socket conexao = s.accept();
				System.out.println(" Conectou!");
				BufferedReader entrada = new BufferedReader(new InputStreamReader(conexao.getInputStream()));
				PrintStream saida = new PrintStream(conexao.getOutputStream());
				String linha = entrada.readLine();
				while (linha != null && !(linha.trim().equals(""))) {
					saida.println("Eco: " + linha);
					linha = entrada.readLine();
				}
				conexao.close();
			}
		}
		catch (IOException e) {
			System.out.println("IOException: " + e);
		}
	}
}

após ter inserido tudo o que for lido na string linha, instancie uma StringBuffer, coloque como parametro do construtor a string lida e use o metodo reverse.
Assim:

StringBuffer sb = new StringBuffer(linha);
sb.reverse();
System.out.println(sb);

Aparecerá na tela a string invertida.
Outra forma é usar o metodo charAt() da classe String. Quando a String linha estiver pronta, faça um looping invertido na string usando esse metodo.

[quote=“montanha”]valew pela dica os que postaram, mas estou postando o código onde tenho uma aplicação servidor, que lê uma string no caso linha, tenho que reverter, mas estou tendo dificuldades em compreender o método reverse, se alguém tiver algum exemplo eu agradeço.
[/quote]

Tome cuidado… o teu codigo nao esta fechando os readers e afins… isso pode te dar problemas uma hora.

Rafael

sei que a discussao já e bem antiga mais caso alguem esteja procurando ainda por essa resposta segue uma dica de como inverter uma string em java!

public class StringDemo {
  public static void main(String[] args) {
    String palindrome = "Dot saw I was Tod";
    int len = palindrome.length();
    char[] tempCharArray = new char[len];
    char[] charArray = new char[len];
 
    // put original string in an array of chars
    for (int i = 0; i < len; i++) {
      tempCharArray[i] = palindrome.charAt(i);
    }
 
    // reverse array of chars
    for (int j = 0; j < len; j++) {
      charArray[j] = tempCharArray[len - 1 - j];
    }
 
    String reversePalindrome = new String(charArray);
    System.out.println(reversePalindrome);
  }
}

Espero que ajude, qualquer duvida visitem o link para ver outras formas de manipular String em java!
http://stthiaggo.blogspot.com/2011/07/manipulando-strings-em-java.html

1 curtida