使用 Java'sstringbuilder 反转字符串

String reverse using Java'sstringbuilder

我使用 Java 开发来做一个小项目。

我想要字符串反转。 如果我输入"I am a girl",打印反转...

我已经尝试使用 StringBuilder。 我也使用 StringBuffer 语法编写它...... 但是我失败了... 它不是打印我的愿望...

愿望

我的打印 -> "I ma a lrig"

"I am a girl" -> "I ma a lrig" 反转!!

我该怎么办?..

请帮帮我谢谢~!!!

public String reverse() {        
    String[] words = str.split("\s");       
    StringTokenizer stringTokenizer = new StringTokenizer(str, " ");

    for (String string : words) {
        System.out.print(string);
    }

    String a = Arrays.toString(words);

    StringBuilder builder = new StringBuilder(a);

    System.out.println(words[0]);

    for (String st : words){
        System.out.print(st);
    }

    return "";     
}

Java 8 个代码:

public static void main(String[] args) {
    String str = "I am a girl";
    StringBuilder sb = new StringBuilder();
    // split() returns an array of Strings, for each string, append it to a StringBuilder by adding a space.
    Arrays.asList(str.split("\s+")).stream().forEach(s -> {
        sb.append(new StringBuilder(s).reverse() + " ");
    });
    String reversed = sb.toString().trim(); // remove trailing space
    System.out.println(reversed);
}

O/P :

I ma a lrig

如果您不想使用 lambda 那么您也可以尝试这个解决方案

String str = "I am a girl";
        String finalString = "";
        String s[] = str.split(" ");
        for (String st : s) {
            finalString += new StringBuilder(st).reverse().append(" ").toString();
        }
        System.out.println(finalString.trim());
    }