算法 - Java 实现字符串的反转三种方式

使用 chatAt () 方法

利用 String 的 CharAt 方法取出字符串中的各个字符

1
2
3
4
5
6
7
8
9
10
11
12
/**
* 实现字符串的反转
* @param str
* @return String
*/
public static String reverse(String str) {
StringBuilder new_str = new StringBuilder();
for (int i = str.length() - 1; i >= 0; i--) {
new_str.append(str.charAt(i));
}
return new_str.toString();
}

转为数组后拼接字符串

利用 String 的 toCharArray 方法先将字符串转化为 char 类型数组,然后将各个字符进行重新拼接。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/**
* 实现字符串的反转
* @param str
* @return String
*/
public static String reverse(String str) {
// 将字符串转为 char 类型数组
char[] chars = str.toCharArray();
StringBuilder new_str = new StringBuilder();
// 从右到左重新拼接
for (int i = chars.length - 1; i >= 0; i--) {
new_str.append(chars[i]);
}
return new_str.toString();
}

StringBuilder 中的 reverse 成员方法

利用 StringBuffer 或 StringBuilder 的 reverse 成员方法。

1
2
3
4
5
6
7
8
9
/**
* 实现字符串的反转
* @param str
* @return String
*/
public static String reverse(String str) {
StringBuilder new_str = new StringBuilder(str);
return new_str.reverse().toString();
}