串的反转

来源:互联网 发布:unity3d粒子系统教程 编辑:程序博客网 时间:2024/05/01 12:35
我们把“cba”称为“abc”的反转串。

求一个串的反转串的方法很多。下面就是其中的一种方法,代码十分简洁(甚至有些神秘)。

public class Test_4{public static void main(String[] args) {String str = "abcde";System.out.println(str);String strAfter = reverseString(str);System.out.println(strAfter);}//将字符串递归到最后一个字符,返回这个字符e,在递归的上一层,return的第一个参数接收到e,上一层的x是de,所以x.charAt(0)是d。//组成字符串ed,在向上一层递归返回,上一层的x是cde,return接收的第一个参数是ed,x.charAt(0)返回的是c。//组成字符串edcpublic static String reverseString(String x){if(x == null || x.length()<2) return x;return reverseString(x.substring(1,x.length())) + x.charAt(0);}}

图示: