一招学会!字符串单词反转,Java编程轻松实现

引言
字符串单词反转是一个常见的编程问题,它考察了编程者对字符串操作的理解和掌握。在Java中,有多种方法可以实现字符串单词的反转。本文将详细介绍几种常用的方法,并通过代码示例进行说明。
方法一:使用
StringBuilder
类
StringBuilder
类是Java中用于操作可变字符串的一个类。它提供了许多方法来对字符串进行修改,包括反转。
public class ReverseWords {
public static void main(String[] args) {
String original = “Hello World”;
String reversed = reverseWords(original);
System.out.println(reversed);
}

public static String reverseWords(String str) {
if (str == null || str.isEmpty()) {
return str;
}
StringBuilder sb = new StringBuilder(str);
return sb.reverse().toString();
}
}
分析
首先,我们检查输入的字符串是否为空或null。
使用
StringBuilder
类的构造函数创建一个新的可变字符串。
使用
reverse()
方法将字符串中的字符顺序反转。
将反转后的字符串转换为普通字符串并返回。
方法二:手动反转单词
这种方法涉及到手动遍历字符串,并将单词一个接一个地反转。
public class ReverseWords {
public static void main(String[] args) {
String original = “Hello World”;
String reversed = reverseWordsManually(original);
System.out.println(reversed);
}

public static String reverseWordsManually(String str) {
if (str == null || str.isEmpty()) {
return str;
}
char[] chars = str.toCharArray();
int start = 0;
for (int end = 0; end < chars.length; end++) { if (chars[end] == ' ') { reverse(chars, start, end - 1); start = end + 1; } } reverse(chars, start, chars.length - 1); // 反转最后一个单词 return new String(chars); } private static void reverse(char[] chars, int start, int end) { while (start < end) { char temp = chars[start]; chars[start] = chars[end]; chars[end] = temp; start++; end--; } } } 分析 首先,将字符串转换为字符数组。 遍历字符数组,每次遇到空格时,反转当前单词。 最后,反转最后一个单词。 将字符数组转换回字符串并返回。 总结 在Java中,字符串单词反转可以通过多种方法实现。本文介绍了两种常用的方法:使用 StringBuilder 类和手动反转单词。这些方法都可以有效地反转字符串中的单词,并且可以根据具体的需求进行选择。通过学习和实践这些方法,可以加深对Java字符串操作的理解。