java如何反转字符
反转字符串的方法
在Java中,反转字符串可以通过多种方式实现。以下是几种常见的方法:
使用StringBuilder的reverse方法
StringBuilder类提供了reverse方法,可以方便地反转字符串:
String original = "hello";
String reversed = new StringBuilder(original).reverse().toString();
System.out.println(reversed); // 输出 "olleh"
使用字符数组
通过将字符串转换为字符数组,然后手动反转数组元素:
String original = "world";
char[] chars = original.toCharArray();
int left = 0, right = chars.length - 1;
while (left < right) {
char temp = chars[left];
chars[left] = chars[right];
chars[right] = temp;
left++;
right--;
}
String reversed = new String(chars);
System.out.println(reversed); // 输出 "dlrow"
使用递归
递归方法也可以实现字符串反转:
public static String reverseString(String str) {
if (str.isEmpty()) {
return str;
}
return reverseString(str.substring(1)) + str.charAt(0);
}
String original = "recursion";
String reversed = reverseString(original);
System.out.println(reversed); // 输出 "noisrucer"
使用Java 8的Stream API
通过Stream API可以更函数式地实现反转:

String original = "stream";
String reversed = original.chars()
.mapToObj(c -> (char)c)
.reduce("", (s, c) -> c + s, (s1, s2) -> s2 + s1);
System.out.println(reversed); // 输出 "maerts"
每种方法都有其适用场景,StringBuilder的reverse方法通常是最简洁高效的选择。






