【面试】将字符串倒序输出
1:递归
public static void main(String[] args) {
String s="abcdefg";
dgTest(s);
StringBuilder b = new StringBuilder(s);
System.out.print(b.reverse().toString());
}
public static String dgTest(String s) {
if(s == null || s.length() <= 1) {
return s;
}else{
return dgTest(s.substring(1)) + s.charAt(0);
}
}
2:使用StringBuild 和 StringBuffer的reverse()
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("abcdefg");
System.out.println(stringBuilder.reverse());
StringBuffer stringBuffer = new StringBuffer();
stringBuffer.append("abcdefg");
System.out.println(stringBuffer.reverse());
3:数组循环
public static void main(String[] args) { String s = "12345678"; char[] array = s.toCharArray(); //转成char数组 for (int i = 0; i < s.length() / 2; i++) { array[i] = s.charAt(s.length() - 1 - i); array[s.length() - 1 - i] = s.charAt(i); System.out.println(array); } }