转载地址:https://blog.csdn.net/ctianju/article/details/116752690
题目
写出一个程序,接受一个字符串,然后输出该字符串反转后的字符串。(字符串长度不超过1000)
解析
一、直接反向输出
二、将字符数组反转
java代码
mport java.util.ArrayList;
import java.util.List;
public class ReverseString {
public static void main(String[] args) {
toReverse("abcdefg");
}
// 方法一:直接反向输出
public static void toReverse(String str) {
List<Character> characterList = new ArrayList<>();
for (int i = str.length() - 1; i >= 0; --i) {
characterList.add(str.charAt(i));
}
for (char result : characterList) {
System.out.println(result);
}
}
// 双指针,将字符串进行翻转
private String reserve(String str) {
String result = "";
if (str == null || str.length() == 0) {
return result;
}
char[] c = str.toCharArray();
int i = 0, j = c.length - 1;
char tmp;
while (i < j) {
tmp = c[i];
c[i] = c[j];
c[j] = tmp;
++i;
--j;
}
// 返回指定数组中表示该字符序列的字符串
result = String.copyValueOf(c);
return result;
}
}