使用 StringBuffer 反转字符串中单词的代码

Code to reverse words in a String using StringBuffer

这是一些使用 StringBuffer:

反转字符串中字符的代码
String sh = "ABCDE";
System.out.println(sh + " -> " + new StringBuffer(sh).reverse());

是否有任何类似的方法可以使用 StringBuffer 反转字符串中的单词?

输入:"I Need It" 和 输出应为:"It Need I"

您可以使用 StringUtils reverseDelimited:

Reverses a String that is delimited by a specific character. The Strings between the delimiters are not reversed. Thus java.lang.String becomes String.lang.java (if the delimiter is '.').

因此在您的情况下,我们将使用 space 作为分隔符:

import org.apache.commons.lang.StringUtils;
String reversed = StringUtils.reverseDelimited(sh, ' ');

如果没有它,您可能还会找到更冗长的解决方案 here

仅使用 JDK 方法

String input = "I Need It";

String[] array = input.split(" ");
List<String> list = Arrays.asList(array);
Collections.reverse(list);
String output = String.join(" ", list);

System.out.println(output);

结果是It Need I