我有“Hello World”保存在一个名为hi的字符串变量中。

我需要打印出来,但要颠倒过来。

我该怎么做呢?我知道Java中已经内置了这样一个函数。

相关:用Java反向“Hello World”字符串的每一个单词


当前回答

java中的简单For循环

 public void reverseString(char[] s) {
    int length = s.length;
    for (int i = 0; i < s.length / 2; i++) {
        // swaping character
        char temp = s[length - i - 1];
        s[length - i - 1] = s[i];
        s[i] = temp;
    }
}

其他回答

String string="whatever";
String reverse = new StringBuffer(string).reverse().toString();
System.out.println(reverse);
import java.util.Scanner;

public class Test {

    public static void main(String[] args){
        Scanner input = new Scanner (System.in);
        String word = input.next();
        String reverse = "";
        for(int i=word.length()-1; i>=0; i--)
            reverse += word.charAt(i);
        System.out.println(reverse);        
    }
}

如果你想使用一个简单的for循环!

java中的简单For循环

 public void reverseString(char[] s) {
    int length = s.length;
    for (int i = 0; i < s.length / 2; i++) {
        // swaping character
        char temp = s[length - i - 1];
        s[length - i - 1] = s[i];
        s[i] = temp;
    }
}

它是非常简单的在最少的代码行

public class ReverseString {
    public static void main(String[] args) {
        String s1 = "neelendra";
        for(int i=s1.length()-1;i>=0;i--)
            {
                System.out.print(s1.charAt(i));
            }
    }
}

下面是一个使用递归的例子:

public void reverseString() {
    String alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
    String reverseAlphabet = reverse(alphabet, alphabet.length()-1);
}

String reverse(String stringToReverse, int index){
    if(index == 0){
        return stringToReverse.charAt(0) + "";
    }

    char letter = stringToReverse.charAt(index);
    return letter + reverse(stringToReverse, index-1);
}