public class TurnOver { public static void main(String[] args) { String str = "abcdefg"; System.out.println("方法1:" + turnOver1(str)); System.out.println("方法2:" + turnOver2(str)); System.out.println("方法3:" + turnOver3(str)); } /** * 使用递归 * * @param str * @return */ private static String turnOver1(String str) { if (str == null || str.length() <= 1) { return str; } return turnOver1(str.substring(1)) + str.charAt(0); } /** * 将字符串转换为数组,将数组倒序 * * @param str * @return */ private static String turnOver2(String str) { char[] arr = str.toCharArray(); String result = ""; for (int i = arr.length - 1; i >= 0; i--) { result += arr[i]; } return result; } /** * 使用StringBuilder的reverse()方法 * * @param str * @return */ private static String turnOver3(String str) { StringBuilder sb = new StringBuilder(str); return sb.reverse().toString(); } }